Divide into tools and languages

This commit is contained in:
larstvei 2024-10-06 18:27:11 +02:00
parent ec9964b750
commit f2ee1682c1
5 changed files with 114 additions and 62 deletions

View File

@ -22,7 +22,7 @@
modules = [
./modules/core.nix
./modules/mac.nix
./modules/macos.nix
home-manager.darwinModule
{

View File

@ -1,64 +1,11 @@
{ pkgs, emacs-larstvei, ... }: {
home.packages = with pkgs; [
emacs-larstvei.defaultPackage.${pkgs.system}
(hunspellWithDicts [ hunspellDicts.nb_NO ])
(python3.withPackages
(python-packages: with python-packages; [
graphviz
html2text
hypothesis
matplotlib
numpy
openpyxl
pandas
pygments
python-lsp-server
scikit-learn
scipy
xlsxwriter
yattag
z3
]))
(haskell.packages.ghc96.ghcWithPackages
(ps: with ps; [
QuickCheck
]))
bat
babashka
# cargo
cbqn
clj-kondo
cloc
clojure
fd
ffmpeg
fzf
go
gopls
graphviz
imagemagick
inkscape
jdk
jdt-language-server
jet
jq
leiningen
minizinc
nil
neil
nixfmt
pandoc
parallel
pdf2svg
poppler_utils
ripgrep
# rust-analyzer
rustup
stack
texlive.combined.scheme-full
wget
];
{ lib, pkgs, emacs-larstvei, ... }:
let
concatAttrVals = attrSet: lib.concatMap (x: x) (lib.attrValues attrSet);
tools = import ./tools.nix { inherit pkgs; inherit emacs-larstvei; };
langauges = import ./languages.nix { inherit pkgs; };
in
{
home.packages = concatAttrVals langauges ++ concatAttrVals tools;
home.file.".config/enchant/hunspell/".source = "${pkgs.hunspellDicts.nb_NO}/share/hunspell/";

69
modules/languages.nix Normal file
View File

@ -0,0 +1,69 @@
{ pkgs, ... }:
with pkgs; {
bqn = [
cbqn
];
clojure = [
babashka
clj-kondo
clojure
leiningen
neil
];
go = [
go
gopls
];
haskell = [
(haskell.packages.ghc96.ghcWithPackages
(ps: with ps; [
QuickCheck
]))
stack
];
java = [
jdk
jdt-language-server
];
maude = [
maude
];
minizinc = [
minizinc
];
nix = [
nil
nixfmt
];
python = [
(python3.withPackages
(python-packages: with python-packages; [
graphviz
html2text
hypothesis
matplotlib
numpy
openpyxl
pandas
pygments
python-lsp-server
scikit-learn
scipy
xlsxwriter
yattag
z3
]))
];
tex = [
texlive.combined.scheme-full
];
}

36
modules/tools.nix Normal file
View File

@ -0,0 +1,36 @@
{ pkgs, emacs-larstvei, ... }:
with pkgs; {
editor = [
emacs-larstvei.defaultPackage.${pkgs.system}
];
spelling = [
(hunspellWithDicts [ hunspellDicts.nb_NO ])
];
modernReplacements = [
bat
fd
ripgrep
];
utils = [
cloc
jet
jq
pandoc
parallel
wget
];
multimedia = [
ffmpeg
graphviz
imagemagick
inkscape
pdf2svg
poppler_utils
];
}