aboutsummaryrefslogtreecommitdiff
path: root/packages.nix
blob: bb01006b6b9c956ea63b0012b9f3ffce84b2e7df (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
128
129
130
131
132
133
134
135
136
137
{ pkgs, config, ... }:

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

    # Not local
    #pkgs.bspwm
  ];

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

    gcc
    gnumake
    nodejs-16_x

    # godot
    # blender

    rnix-lsp
    efm-langserver
  ] ++ (
    with pkgs.nodePackages; [
      typescript
      typescript-language-server
      vscode-json-languageserver
      vscode-langservers-extracted
      # bash-language-server
    ]
  );

  apps = with pkgs; [
    # Browser
    qutebrowser
    brave
    # ungoogled-chromium

    # Comm
    #slack
    # signal-cli
    # signal-desktop

    # Media
    spotify
    mpv
    sxiv
    youtube-dl
    imagemagick
    ffmpeg-full
    feh

    # Scheduling
    remind
    wyrd

    #monero-gui
    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 = {
    adb.enable = true;
  };

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

  # Security wrappers
  security.wrappers = {
    bslock = {
      owner = config.users.users.imsohexy.name;
      group = "users";
      source = "${localPkgs.bslock}/bin/bslock";
    };
  };
}