unify overlays

We used to have overlay definitions in home/overlays and
packages/default. Let's unify them.
Using the exposed overlay from the flake required some changes in the
home-manager config though.
This commit is contained in:
Trolli Schmittlauch 2026-02-18 18:36:16 +01:00
parent 3160908c0b
commit eab86cf718
4 changed files with 168 additions and 159 deletions

View file

@ -1,123 +1,132 @@
{
pkgs,
lib,
inputs,
config,
...
}:
with pkgs;
let
cfg = config.schmittlauch.packages;
unstable = inputs.nixos-unstable.legacyPackages.${stdenv.hostPlatform.system};
nur = inputs.nur.legacyPackages.${stdenv.hostPlatform.system};
unstable = inputs.nixos-unstable.legacyPackages.${pkgs.stdenv.hostPlatform.system};
nur = inputs.nur.legacyPackages.${pkgs.stdenv.hostPlatform.system};
graphicsApps = [
inkscape
exiftool
]
++ (with gimp3Plugins; [
#fourier # broken
#lqrPlugin # broken
])
++ lib.optionals pkgs.stdenv.isLinux [
darktable
gimp3
hugin
#luminanceHDR # FIXME, build failure
xournalpp
]
++ lib.optionals pkgs.stdenv.isDarwin [
gimp2
];
graphicsApps =
with pkgs;
[
inkscape
exiftool
]
++ (with gimp3Plugins; [
#fourier # broken
#lqrPlugin # broken
])
++ lib.optionals pkgs.stdenv.isLinux [
darktable
gimp3
hugin
#luminanceHDR # FIXME, build failure
xournalpp
]
++ lib.optionals pkgs.stdenv.isDarwin [
gimp2
];
multimediaApps = [
mpv
]
++ lib.optionals pkgs.stdenv.isDarwin [ vlc-bin ]
++ lib.optionals pkgs.stdenv.isLinux [
vlc
amarok
clementine
kdePackages.elisa
musescore
tenacity
#nur.repos.fooker.studio-link
];
multimediaApps =
with pkgs;
[
mpv
]
++ lib.optionals pkgs.stdenv.isDarwin [ vlc-bin ]
++ lib.optionals pkgs.stdenv.isLinux [
vlc
amarok
clementine
kdePackages.elisa
musescore
tenacity
#nur.repos.fooker.studio-link
];
cliApps = [
coreutils
myVim
htop
tmux
httpie
rsync
ponysay
gti
tree
lsof
mosh
openssh
sshfs-fuse
sshuttle
cryfs
gnupg
unar
lzop
p7zip
pwgen
pandoc
pdfgrep
# zig dependency breaks occasionally, stay on C version for now
ncdu_1
dos2unix
unzip
fswatch
jq
age
lnav
spacer
cliApps =
with pkgs;
[
coreutils
myVim
htop
tmux
httpie
rsync
ponysay
gti
tree
lsof
mosh
openssh
sshfs-fuse
sshuttle
cryfs
gnupg
unar
lzop
p7zip
pwgen
pandoc
pdfgrep
# zig dependency breaks occasionally, stay on C version for now
ncdu_1
dos2unix
unzip
fswatch
jq
age
lnav
spacer
nix-output-monitor # putting this here as a plain `nix` alternative
]
++ lib.optionals pkgs.stdenv.isLinux [
xclip
smbnetfs # for FUSE smb mounting
psmisc # for killall
torsocks
agrep
reptyr # re-bind running program to other tty
];
nix-output-monitor # putting this here as a plain `nix` alternative
nixHelpers = [
]
++ lib.optionals pkgs.stdenv.isLinux [
xclip
smbnetfs # for FUSE smb mounting
psmisc # for killall
torsocks
agrep
reptyr # re-bind running program to other tty
];
nixHelpers = with pkgs; [
nixpkgs-review
nixfmt
nix-top
statix
];
devTools = [
curl
httpie
gcc
shellcheck
mtr
ripgrep
fd
pre-commit
scriv
devTools =
with pkgs;
[
curl
httpie
gcc
shellcheck
mtr
ripgrep
fd
pre-commit
scriv
# Haskell
ghc
cabal2nix
]
++ lib.optionals pkgs.stdenv.isLinux [
gdb
strace
ltrace
valgrind
zeal
];
# Haskell
ghc
cabal2nix
]
++ lib.optionals pkgs.stdenv.isLinux [
gdb
strace
ltrace
valgrind
zeal
];
pythonTools = with python3Packages; [
pythonTools = with pkgs.python3Packages; [
python # to shadow old macOS python
ipython
uv
@ -131,16 +140,16 @@ let
mypy
];
games = [
games = with pkgs; [
superTuxKart
#hedgewars
];
desktopCommon = [
desktopCommon = with pkgs; [
keepassxc
];
desktopLinux = [
desktopLinux = with pkgs; [
firefox
chromium
kdePackages.falkon
@ -187,31 +196,33 @@ let
chromedriver
];
kdeTools = [
okteta
]
++ (with kdePackages; [
okular
gwenview
yakuake
dolphin
spectacle
kate
kleopatra
qdirstat
ark
kwalletmanager
#ktouch # TODO: unbreak
kcharselect
konversation
krdc
skanlite
akonadiconsole
tokodon # mastodon client
networkmanager-qt
kcrash
breeze-gtk
]);
kdeTools =
with pkgs;
[
okteta
]
++ (with kdePackages; [
okular
gwenview
yakuake
dolphin
spectacle
kate
kleopatra
qdirstat
ark
kwalletmanager
#ktouch # TODO: unbreak
kcharselect
konversation
krdc
skanlite
akonadiconsole
tokodon # mastodon client
networkmanager-qt
kcrash
breeze-gtk
]);
in
{
options.schmittlauch.packages = {
@ -248,7 +259,7 @@ in
++ (lib.optional cfg.kde kdeTools)
);
nixpkgs.overlays = import ../overlays.nix;
nixpkgs.overlays = lib.attrValues inputs.self.overlays;
nixpkgs.config = {
permittedInsecurePackages = [