nix

configuration files that power my machines
Log | Files | Refs | README | LICENSE

default.nix (2945B)


      1 {
      2   pkgs,
      3   lib,
      4   ...
      5 }: {
      6   imports = [../../modules/mixins/dotfiles ../../modules/mixins/core ../../modules/mixins/treesitter ./overlays];
      7 
      8   targets.genericLinux = {
      9     enable = true;
     10     gpu.enable = true;
     11   };
     12 
     13   home.packages = lib.concatLists (lib.attrValues (with pkgs; {
     14     web = [
     15       aerc
     16       monolith
     17       newsraft
     18       khal
     19       tiny
     20       khard
     21       chawan
     22       discordo
     23       toot
     24       pimsync
     25     ];
     26 
     27     data = [
     28       duckdb
     29       jless
     30       jaq
     31       jq
     32       gron
     33       tokyocabinet
     34       dhall
     35       pandoc
     36       codespelunker
     37       graphviz
     38       lowdown
     39       miktex
     40       ghostscript
     41       gnuplot
     42       ministat
     43       fq
     44       geesefs
     45       ouch
     46       xan
     47       nb
     48       yq
     49       jdupes
     50       plakar
     51     ];
     52 
     53     vcs = [
     54       git-crypt
     55       git-absorb
     56       git-bug
     57       prek
     58       hut
     59       prr
     60       tig
     61       dura
     62       stgit
     63     ];
     64 
     65     net = lib.concatLists [
     66       [
     67         dnscontrol
     68         sshfs
     69         rclone
     70         xh
     71         lftp
     72         nmap
     73         knot-dns
     74         yt-dlp
     75         awscli2
     76         syncthing
     77         tarsnap
     78         spiped
     79         rsync
     80         openrsync
     81         iperf3
     82         sshuttle
     83         sshs
     84         bore-cli
     85         ldns
     86         bind
     87         vnstat
     88         gping
     89         boring
     90         oha
     91       ]
     92       (with python314Packages; [yt-dlp-ejs])
     93     ];
     94 
     95     media = [
     96       ncmpcpp
     97       sacad
     98       ffmpeg
     99       soundtouch
    100       imagemagick
    101       exiftool
    102       rubberband
    103       coppwr
    104       harper
    105       av1an
    106     ];
    107 
    108     ansible = [
    109       ansible
    110       ansible-lint
    111     ];
    112 
    113     build = [
    114       bazelisk
    115       bear
    116       entr
    117       buck2
    118       skopeo
    119       podman
    120       sccache
    121       podlet
    122       buildah
    123     ];
    124 
    125     utils = [
    126       shellcheck
    127       shfmt
    128       ncdu
    129       gdb
    130       strace
    131       perf
    132       moor
    133       buf
    134       duc
    135       clang-tools
    136       parallel
    137       pbpctrl
    138       tenv
    139       cosign
    140       treefmt
    141       cloc
    142       hyperfine
    143       duf
    144       sysbench
    145       fswatch
    146       lf
    147       elvish
    148       tealdeer
    149     ];
    150 
    151     nix = [
    152       nixd
    153       cachix
    154       statix
    155       deadnix
    156       ragenix
    157       alejandra
    158       nixfmt
    159     ];
    160 
    161     beam = lib.concatLists [
    162       (with beamMinimal28Packages; [rebar3 erlang erlang-language-platform])
    163       [gleam]
    164     ];
    165 
    166     javascript = lib.concatLists [
    167       [
    168         nodejs-slim
    169         purescript
    170         pnpm
    171       ]
    172       (with elmPackages; [
    173         elm
    174         elm-format
    175         elm-analyse
    176         elm-language-server
    177       ])
    178     ];
    179 
    180     lua = lib.concatLists [
    181       (with luaPackages; [fennel lua])
    182       [fnlfmt]
    183     ];
    184 
    185     nim = [
    186       nim
    187       nph
    188       nimble
    189       nimlangserver
    190       c2nim
    191     ];
    192 
    193     gui = [
    194       picard
    195       xnviewmp
    196       freerdp
    197       sioyek
    198       halloy
    199       avidemux
    200       supersonic-wayland
    201     ];
    202 
    203     llm = [
    204       ollama
    205       codex
    206       opencode
    207     ];
    208 
    209     other = [
    210       babashka
    211       guile
    212       haunt
    213       go_1_26
    214       gopls
    215       zls
    216     ];
    217   }));
    218 }