local.packages convenience option

This commit is contained in:
Gerg-L 2025-01-13 13:23:44 -05:00
parent 4ecebe8210
commit 99f42f5841
Signed by: gerg-l
SSH key fingerprint: SHA256:FPYDHIkvMocr4wdmZXpgpJjsb2Tw6rASs2ISPbOb0KI
5 changed files with 109 additions and 106 deletions

View file

@ -25,6 +25,37 @@
"steam-unwrapped"
"steam-run"
];
packages = {
inherit (pkgs)
bitwarden-desktop # store stuff
qbittorrent # steal stuff
pavucontrol # gui volume control
pcmanfm # file manager
vlc # play stuff
ripgrep
fd
jq
wget
xautoclick
prismlauncher
deadnix
statix
#element-desktop
vesktop
gh
nixfmt-rfc-style
prusa-slicer # 3D printer slicer
# QMK configuration
#via
#qmk
;
inherit (nvim-flake.packages) neovim;
inherit (self'.packages) lint;
librewolf = pkgs.librewolf.override { cfg.speechSynthesisSupport = false; };
nixpkgs-review = pkgs.nixpkgs-review.override { nix = config.nix.package; };
};
};
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
@ -88,43 +119,10 @@
};
sops.secrets.github_token = { };
environment = {
systemPackages = builtins.attrValues {
inherit (pkgs)
bitwarden-desktop # store stuff
qbittorrent # steal stuff
pavucontrol # gui volume control
pcmanfm # file manager
vlc # play stuff
ripgrep
fd
jq
wget
xautoclick
prismlauncher
deadnix
statix
#element-desktop
vesktop
gh
nixfmt-rfc-style
prusa-slicer # 3D printer slicer
# QMK configuration
#via
#qmk
;
inherit (nvim-flake.packages) neovim;
inherit (self'.packages) lint;
librewolf = pkgs.librewolf.override { cfg.speechSynthesisSupport = false; };
nixpkgs-review = pkgs.nixpkgs-review.override { nix = config.nix.package; };
};
etc = {
environment.etc = {
"jdks/17".source = "${pkgs.openjdk17}/bin";
"jdks/8".source = "${pkgs.openjdk8}/bin";
};
};
services.udev.packages = [
pkgs.android-udev-rules

View file

@ -17,9 +17,7 @@
enable = true;
kmscon.enable = true;
};
};
environment.systemPackages = builtins.attrValues {
packages = {
inherit (pkgs)
vlc
pavucontrol # gui volume control
@ -27,6 +25,8 @@
;
inherit (nvim-flake.packages) neovim;
};
};
services.xserver.videoDrivers = [ "modesetting" ];
networking.networkmanager.enable = true;

View file

@ -9,6 +9,31 @@
options.local.DE.dwm.enable = lib.mkEnableOption "";
config = lib.mkIf config.local.DE.dwm.enable {
local.packages = {
inherit (suckless.packages) dmenu dwm st;
inherit (pkgs)
maim
playerctl
xclip
feh
numlockx
picom
sxhkd
xscreensaver
;
xsecurelock = pkgs.writeShellScriptBin "xsecurelock" ''
export XSECURELOCK_BLANK_TIMEOUT="30"
export XSECURELOCK_AUTH_TIMEOUT="30"
export XSECURELOCK_BLANK_DPMS_STATE="off"
export XSECURELOCK_BACKGROUND_COLOR="#000000"
export XSECURELOCK_AUTH_BACKGROUND_COLOR="#080808"
export XSECURELOCK_AUTH_FOREGROUND_COLOR="#bdbdbd"
export XSECURELOCK_FONT="Overpass"
export XSECURELOCK_SHOW_DATETIME="1"
${lib.getExe pkgs.xsecurelock}
'';
};
systemd.user.services = {
sxhkd = {
wantedBy = [ "graphical-session.target" ];
@ -67,34 +92,8 @@
];
};
};
environment = {
systemPackages = builtins.attrValues {
inherit (suckless.packages) dmenu dwm st;
inherit (pkgs)
maim
playerctl
xclip
feh
numlockx
picom
sxhkd
xscreensaver
;
xsecurelock = pkgs.writeShellScriptBin "xsecurelock" ''
export XSECURELOCK_BLANK_TIMEOUT="30"
export XSECURELOCK_AUTH_TIMEOUT="30"
export XSECURELOCK_BLANK_DPMS_STATE="off"
export XSECURELOCK_BACKGROUND_COLOR="#000000"
export XSECURELOCK_AUTH_BACKGROUND_COLOR="#080808"
export XSECURELOCK_AUTH_FOREGROUND_COLOR="#bdbdbd"
export XSECURELOCK_FONT="Overpass"
export XSECURELOCK_SHOW_DATETIME="1"
${lib.getExe pkgs.xsecurelock}
'';
};
etc = {
"sxhkd/sxhkdrc".text = ''
environment.etc."sxhkd/sxhkdrc".text = ''
XF86AudioPlay
playerctl play-pause
XF86AudioPause
@ -125,6 +124,4 @@
xsecurelock
'';
};
};
};
}

8
modules/packages.nix Normal file
View file

@ -0,0 +1,8 @@
{ lib, config }:
{
options.local.packages = lib.mkOption {
type = lib.types.attrsOf lib.types.package;
default = { };
};
config.environment.systemPackages = builtins.attrValues config.local.packages;
}

View file

@ -3,11 +3,11 @@
pkgs,
}:
{
environment = {
systemPackages = builtins.attrValues {
local.packages = {
inherit (pkgs) eza fzf;
inherit (fetch-rs.packages) fetch-rs;
};
environment = {
variables = {
EDITOR = "nvim";
VISUAL = "nvim";