aboutsummaryrefslogtreecommitdiff
path: root/packages.nix
blob: 9e6aaa902cfaf08b59fef7c210c1692a7369aedc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
{ pkgs, config, ... }:

let
  localPkgs = import ./packages/default.nix { pkgs = pkgs; };
  customPackages = with localPkgs; [
    sensible-apps
    shotkey
    # dwm
    # dwmblocks
    st
    dmenu
    anypinentry
    bslock

    # Not local
    #pkgs.bspwm
  ];

  devPackages = with pkgs; [
    # Dev
    neovim
    silver-searcher
    ripgrep
    ctags
    fzf
    git-bug
    docker-compose

    gcc
    gnumake
    nodejs-16_x
    python3
    # rustup

    godot
    blender

    rnix-lsp
    # python-language-server
    #haskell-language-server # Broken on 8-Sept-2021
    ghc
    # cabal-install
  ] ++ (
    with pkgs.nodePackages; [
      typescript
      typescript-language-server
      vscode-json-languageserver
      # bash-language-server
    ]
  );

  apps = with pkgs; [
    # Browser
    qutebrowser
    brave

    # Media
    mpv
    sxiv
    youtube-dl
    imagemagick
    ffmpeg-full
    feh
    #monero-gui

    # Scheduling
    remind
    wyrd

    # signal-cli
    # signal-desktop
    lf
    dunst
    gotop
    tremc
    zathura
  ];


  utils = with pkgs; [
    libnotify
    xcwd
    unzip
    curl
    jq
    wget
    killall
    pciutils
    udiskie
    file
    at
    bc

    # Audio
    alsaUtils
    qjackctl
    qsynth
    ardour

    # X stuff
    picom
    brightnessctl
    xorg.xinit
    xorg.xrandr
    xorg.xmodmap
    xorg.xkill
    xclip
    xdo
    xdotool
  ];
in
{
  # Packages
  environment.systemPackages = devPackages ++ customPackages ++ apps ++ utils;

  nixpkgs.config.permittedInsecurePackages = [
    "ffmpeg-3.4.8"
  ];

  programs.steam.enable = true;
  hardware.steam-hardware.enable = true;

  # Security wrappers
  security.wrappers = {
    bslock.source = "${localPkgs.bslock}/bin/bslock";
  };
}