forked from poz/niksos
move home-manager to a module, move programs to a separate file
This commit is contained in:
parent
a2891699f4
commit
01a5b312b9
5 changed files with 253 additions and 1 deletions
|
@ -367,6 +367,12 @@
|
||||||
programs.noisetorch.enable = true;
|
programs.noisetorch.enable = true;
|
||||||
|
|
||||||
myOptions = {
|
myOptions = {
|
||||||
|
other = {
|
||||||
|
home-manager = {
|
||||||
|
enable = true;
|
||||||
|
enableDirenv = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
programs = {
|
programs = {
|
||||||
git = {
|
git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -3,8 +3,8 @@ _: {
|
||||||
./configuration.nix
|
./configuration.nix
|
||||||
./fcitx5.nix
|
./fcitx5.nix
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./home-manager.nix
|
|
||||||
#./mullvad.nix
|
#./mullvad.nix
|
||||||
|
./programs.nix
|
||||||
#./restic.nix
|
#./restic.nix
|
||||||
./waydroid.nix
|
./waydroid.nix
|
||||||
];
|
];
|
||||||
|
|
207
hosts/niks/programs.nix
Normal file
207
hosts/niks/programs.nix
Normal file
|
@ -0,0 +1,207 @@
|
||||||
|
{
|
||||||
|
config',
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home-manager.users.${config'.username} = {
|
||||||
|
home.packages = let
|
||||||
|
hyprcontrib = inputs.hyprcontrib.packages.${pkgs.system};
|
||||||
|
shadower = inputs.shadower.packages.${pkgs.system};
|
||||||
|
fenix = inputs.fenix.packages.${pkgs.system};
|
||||||
|
nixpkgs-wayland = inputs.nixpkgs-wayland.packages.${pkgs.system};
|
||||||
|
agenix = inputs.agenix.packages.${pkgs.system};
|
||||||
|
nh = inputs.nh.packages.${pkgs.system};
|
||||||
|
in with pkgs; [
|
||||||
|
git
|
||||||
|
librewolf-wayland
|
||||||
|
keepassxc
|
||||||
|
eza
|
||||||
|
ripgrep
|
||||||
|
libnotify
|
||||||
|
rofi-wayland
|
||||||
|
rofi-calc
|
||||||
|
session-desktop
|
||||||
|
signal-desktop-beta
|
||||||
|
element-desktop
|
||||||
|
obs-studio
|
||||||
|
heroic
|
||||||
|
steam
|
||||||
|
ungoogled-chromium
|
||||||
|
amdgpu_top
|
||||||
|
tor-browser-bundle-bin
|
||||||
|
mullvad-browser
|
||||||
|
thunderbird
|
||||||
|
telegram-desktop
|
||||||
|
#livecaptions
|
||||||
|
gimp
|
||||||
|
helvum
|
||||||
|
ddccontrol
|
||||||
|
ddccontrol-db
|
||||||
|
bluez
|
||||||
|
blueman
|
||||||
|
easyeffects
|
||||||
|
lbry
|
||||||
|
libreoffice-fresh
|
||||||
|
minetest
|
||||||
|
airshipper
|
||||||
|
onionshare-gui
|
||||||
|
prismlauncher
|
||||||
|
qbittorrent
|
||||||
|
ventoy-full
|
||||||
|
zellij
|
||||||
|
nodejs
|
||||||
|
unzip
|
||||||
|
cmake
|
||||||
|
gcc
|
||||||
|
nixpkgs-wayland.sway-unwrapped
|
||||||
|
caprine-bin
|
||||||
|
libsForQt5.kdenlive
|
||||||
|
telegram-desktop
|
||||||
|
waypipe
|
||||||
|
trash-cli
|
||||||
|
bibata-cursors
|
||||||
|
nixpkgs-wayland.swww
|
||||||
|
opentabletdriver
|
||||||
|
networkmanagerapplet
|
||||||
|
nixpkgs-wayland.wl-clipboard
|
||||||
|
nixpkgs-wayland.wlsunset
|
||||||
|
xdg-utils
|
||||||
|
hyprpicker
|
||||||
|
hyprcontrib.hyprprop
|
||||||
|
hyprcontrib.grimblast
|
||||||
|
shadower.shadower
|
||||||
|
pamixer
|
||||||
|
brightnessctl
|
||||||
|
dig
|
||||||
|
swappy
|
||||||
|
nixpkgs-wayland.imv
|
||||||
|
pcmanfm
|
||||||
|
xdg-ninja
|
||||||
|
auto-cpufreq
|
||||||
|
gnupg
|
||||||
|
pinentry-qt
|
||||||
|
age
|
||||||
|
rage
|
||||||
|
fd
|
||||||
|
udisks
|
||||||
|
ffmpeg_6-full
|
||||||
|
ghc
|
||||||
|
ghcid
|
||||||
|
cabal-install
|
||||||
|
yt-dlp
|
||||||
|
filelight
|
||||||
|
(fenix.complete.withComponents [
|
||||||
|
"cargo"
|
||||||
|
"clippy"
|
||||||
|
"rust-src"
|
||||||
|
"rustc"
|
||||||
|
"rustfmt"
|
||||||
|
])
|
||||||
|
wayland
|
||||||
|
showmethekey
|
||||||
|
polkit
|
||||||
|
libsForQt5.polkit-kde-agent
|
||||||
|
asciinema
|
||||||
|
asciinema-agg
|
||||||
|
du-dust
|
||||||
|
appimage-run
|
||||||
|
file
|
||||||
|
virt-manager
|
||||||
|
weechat
|
||||||
|
flowblade
|
||||||
|
hyfetch
|
||||||
|
git-annex
|
||||||
|
gamemode
|
||||||
|
croc
|
||||||
|
uutils-coreutils
|
||||||
|
anki
|
||||||
|
alsa-utils
|
||||||
|
speechd
|
||||||
|
espeak
|
||||||
|
ezquake
|
||||||
|
imagemagick
|
||||||
|
weston
|
||||||
|
pavucontrol
|
||||||
|
psmisc
|
||||||
|
mesa-demos
|
||||||
|
nnn
|
||||||
|
aseprite-unfree
|
||||||
|
jq
|
||||||
|
fq
|
||||||
|
nixpkgs-wayland.eww-wayland
|
||||||
|
gnumake
|
||||||
|
gdb
|
||||||
|
tea
|
||||||
|
codeberg-cli
|
||||||
|
progress
|
||||||
|
parallel
|
||||||
|
p7zip
|
||||||
|
xxd
|
||||||
|
tldr
|
||||||
|
mpc-cli
|
||||||
|
playerctl
|
||||||
|
xdg-user-dirs
|
||||||
|
meson
|
||||||
|
wiki-tui
|
||||||
|
lshw
|
||||||
|
tree
|
||||||
|
ydotool
|
||||||
|
piper
|
||||||
|
smartmontools
|
||||||
|
agenix.default
|
||||||
|
nh.default
|
||||||
|
nyxt
|
||||||
|
exiv2
|
||||||
|
krita
|
||||||
|
mypaint
|
||||||
|
logseq
|
||||||
|
gamescope
|
||||||
|
vitetris
|
||||||
|
gtetrinet
|
||||||
|
|
||||||
|
# tp
|
||||||
|
jetbrains.idea-community
|
||||||
|
maven
|
||||||
|
libsForQt5.umbrello
|
||||||
|
plantuml
|
||||||
|
umlet
|
||||||
|
#graphviz
|
||||||
|
jdk21
|
||||||
|
gradle
|
||||||
|
dbeaver
|
||||||
|
|
||||||
|
# akiso
|
||||||
|
subversion
|
||||||
|
|
||||||
|
linuxKernel.packages.linux_zen.cpupower
|
||||||
|
usbutils
|
||||||
|
libsForQt5.dolphin
|
||||||
|
kiwix
|
||||||
|
inkscape
|
||||||
|
gomuks
|
||||||
|
nushell
|
||||||
|
twitch-tui
|
||||||
|
hugo
|
||||||
|
ytfzf
|
||||||
|
mat2
|
||||||
|
simplex-chat-desktop
|
||||||
|
libsixel
|
||||||
|
lsix
|
||||||
|
ollama
|
||||||
|
qmk
|
||||||
|
python3
|
||||||
|
wev
|
||||||
|
enigma
|
||||||
|
via
|
||||||
|
vial
|
||||||
|
rustdesk
|
||||||
|
superTuxKart
|
||||||
|
solaar
|
||||||
|
glfw-wayland-minecraft
|
||||||
|
httpie
|
||||||
|
mangohud
|
||||||
|
nix-index
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,5 +1,6 @@
|
||||||
_: {
|
_: {
|
||||||
imports = [
|
imports = [
|
||||||
|
./home-manager.nix
|
||||||
./pin-registry.nix
|
./pin-registry.nix
|
||||||
./preserve-system.nix
|
./preserve-system.nix
|
||||||
./xdg.nix
|
./xdg.nix
|
||||||
|
|
38
modules/other/home-manager.nix
Normal file
38
modules/other/home-manager.nix
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
config',
|
||||||
|
inputs,
|
||||||
|
lib,
|
||||||
|
self,
|
||||||
|
...
|
||||||
|
}: with lib; let
|
||||||
|
cfg = config.myOptions.other.home-manager;
|
||||||
|
in {
|
||||||
|
options.myOptions.other.home-manager = {
|
||||||
|
enable = mkEnableOption "enable home-manager";
|
||||||
|
enableDirenv = mkEnableOption "enable direnv";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
home-manager = {
|
||||||
|
useUserPackages = true;
|
||||||
|
useGlobalPkgs = true;
|
||||||
|
extraSpecialArgs = {inherit inputs self config';};
|
||||||
|
users.${config'.username} = {
|
||||||
|
programs = {
|
||||||
|
home-manager.enable = true;
|
||||||
|
direnv = mkIf cfg.enableDirenv {
|
||||||
|
enable = true;
|
||||||
|
nix-direnv.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home = {
|
||||||
|
inherit (config') username;
|
||||||
|
homeDirectory = "/home/${config'.username}";
|
||||||
|
stateVersion = lib.mkDefault "23.11";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in a new issue