make home manager modules composable
Signed-off-by: unexplrd <unexplrd@linerds.us>
This commit is contained in:
14
hosts/dunamis/users/user/common.nix
Normal file
14
hosts/dunamis/users/user/common.nix
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
inputs,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = with inputs; [
|
||||||
|
nix-index-database.hmModules.nix-index
|
||||||
|
self.homeModules.desktop
|
||||||
|
self.homeModules.programs
|
||||||
|
];
|
||||||
|
inherit (osConfig) desktop;
|
||||||
|
home.stateVersion = osConfig.system.stateVersion;
|
||||||
|
home.sessionPath = ["$HOME/.local/bin"];
|
||||||
|
}
|
@ -1,17 +1,7 @@
|
|||||||
{
|
{
|
||||||
lib,
|
imports = [
|
||||||
inputs,
|
./common.nix
|
||||||
osConfig,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = with inputs; [
|
|
||||||
nix-index-database.hmModules.nix-index
|
|
||||||
self.homeModules.desktop
|
|
||||||
self.homeModules.programs
|
|
||||||
./programs.nix
|
|
||||||
./flatpak.nix
|
./flatpak.nix
|
||||||
|
./programs.nix
|
||||||
];
|
];
|
||||||
inherit (osConfig) desktop;
|
|
||||||
home.stateVersion = osConfig.system.stateVersion;
|
|
||||||
home.sessionPath = ["$HOME/.local/bin"];
|
|
||||||
}
|
}
|
||||||
|
@ -1,19 +1,7 @@
|
|||||||
{
|
{
|
||||||
inputs,
|
imports = [
|
||||||
osConfig,
|
../../../dunamis/users/user/common.nix
|
||||||
...
|
../../../dunamis/users/user/programs.nix
|
||||||
}: {
|
|
||||||
imports = with inputs; [
|
|
||||||
nix-index-database.hmModules.nix-index
|
|
||||||
self.homeModules.desktop
|
|
||||||
self.homeModules.programs
|
|
||||||
./programs.nix
|
|
||||||
./flatpak.nix
|
./flatpak.nix
|
||||||
];
|
];
|
||||||
home = {
|
|
||||||
inherit (osConfig.system) stateVersion;
|
|
||||||
sessionPath = ["$HOME/.local/bin"];
|
|
||||||
};
|
|
||||||
|
|
||||||
desktop.niri.enable = true;
|
|
||||||
}
|
}
|
||||||
|
@ -1,87 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
shell = {
|
|
||||||
fish.enable = true;
|
|
||||||
oh-my-posh.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
console.yazi.enable = true;
|
|
||||||
|
|
||||||
stylix.targets.fzf.enable = false;
|
|
||||||
services.ssh-agent.enable = true;
|
|
||||||
services.pueue.enable = true;
|
|
||||||
|
|
||||||
syncthing.enable = true;
|
|
||||||
|
|
||||||
programs = {
|
|
||||||
bat.enable = true;
|
|
||||||
btop = {
|
|
||||||
enable = true;
|
|
||||||
settings.update_ms = 200;
|
|
||||||
};
|
|
||||||
eza.enable = true;
|
|
||||||
fd.enable = true;
|
|
||||||
fzf = {
|
|
||||||
enable = true;
|
|
||||||
defaultOptions = ["--color=16"];
|
|
||||||
};
|
|
||||||
pay-respects.enable = true;
|
|
||||||
nix-index.enable = true;
|
|
||||||
nix-index-database.comma.enable = true;
|
|
||||||
gitui.enable = true;
|
|
||||||
git = {
|
|
||||||
enable = true;
|
|
||||||
delta.enable = true;
|
|
||||||
signing.format = "ssh";
|
|
||||||
aliases = {
|
|
||||||
cl = "clone";
|
|
||||||
co = "checkout";
|
|
||||||
pom = "push origin main";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
jujutsu.enable = true;
|
|
||||||
ripgrep.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
terminal = {
|
|
||||||
ghostty.enable = true;
|
|
||||||
kitty.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
editor = {
|
|
||||||
helix.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
alejandra # nix formatter in rust
|
|
||||||
devenv # programming deps in rust
|
|
||||||
dust # du in rust
|
|
||||||
fend # calc in rust
|
|
||||||
flatpak # flatpak cli
|
|
||||||
jj-fzf # fuzzy finder jujutsu tui
|
|
||||||
just # make in rust
|
|
||||||
ouch # archive manager in runt
|
|
||||||
overskride # bluetooth gui in rust
|
|
||||||
pika-backup # borg gui in rust
|
|
||||||
pinentry-qt # pinentry for rbw
|
|
||||||
procs # ps in rust
|
|
||||||
rbw # bitwarden cli in rust
|
|
||||||
trashy # trash cli in rust
|
|
||||||
vial # qmk keyboard configuring app
|
|
||||||
virt-manager # libvirt gui
|
|
||||||
waycheck # check wayland protocols
|
|
||||||
];
|
|
||||||
|
|
||||||
xdg.desktopEntries = {
|
|
||||||
uni = {
|
|
||||||
actions."Copy".exec = "fish -c \"~/.local/bin/uni --copy\"";
|
|
||||||
categories = ["Utility" "X-Launch" "Network"];
|
|
||||||
comment = "Select and open or copy URLs from a list.";
|
|
||||||
exec = "fish -c \"~/.local/bin/uni\"";
|
|
||||||
icon = "web-browser";
|
|
||||||
name = "Uni URL Handler";
|
|
||||||
startupNotify = true;
|
|
||||||
terminal = false;
|
|
||||||
type = "Application";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
@ -18,34 +18,33 @@
|
|||||||
packages = [
|
packages = [
|
||||||
# misc
|
# misc
|
||||||
"app.zen_browser.zen"
|
"app.zen_browser.zen"
|
||||||
|
"io.github.ungoogled_software.ungoogled_chromium"
|
||||||
"net.mullvad.MullvadBrowser"
|
"net.mullvad.MullvadBrowser"
|
||||||
"com.obsproject.Studio"
|
|
||||||
"com.bitwarden.desktop"
|
"com.bitwarden.desktop"
|
||||||
"com.github.tchx84.Flatseal"
|
"com.github.tchx84.Flatseal"
|
||||||
|
"com.logseq.Logseq"
|
||||||
|
"com.obsproject.Studio"
|
||||||
|
"com.usebottles.bottles"
|
||||||
|
"de.haeckerfelix.Fragments"
|
||||||
"org.qbittorrent.qBittorrent"
|
"org.qbittorrent.qBittorrent"
|
||||||
|
|
||||||
# "com.transmissionbt.Transmission"
|
|
||||||
"com.usebottles.bottles"
|
|
||||||
"com.logseq.Logseq"
|
|
||||||
"io.github.martchus.syncthingtray"
|
|
||||||
|
|
||||||
# chatting
|
# chatting
|
||||||
"org.signal.Signal"
|
|
||||||
"im.riot.Riot"
|
"im.riot.Riot"
|
||||||
"org.telegram.desktop"
|
|
||||||
"io.github.spacingbat3.webcord"
|
"io.github.spacingbat3.webcord"
|
||||||
"org.mozilla.Thunderbird"
|
"org.mozilla.Thunderbird"
|
||||||
|
"org.signal.Signal"
|
||||||
|
"org.telegram.desktop"
|
||||||
|
|
||||||
# media
|
# media
|
||||||
"org.atheme.audacious"
|
"io.bassi.Amberol"
|
||||||
"io.freetubeapp.FreeTube"
|
"io.freetubeapp.FreeTube"
|
||||||
#"io.github.celluloid_player.Celluloid"
|
|
||||||
# "io.mpv.Mpv"
|
# "io.mpv.Mpv"
|
||||||
|
#"io.github.celluloid_player.Celluloid"
|
||||||
|
|
||||||
# gaming
|
# gaming
|
||||||
#"com.github._0negal.Viper"
|
#"com.github._0negal.Viper"
|
||||||
"net.lutris.Lutris"
|
|
||||||
"com.heroicgameslauncher.hgl"
|
"com.heroicgameslauncher.hgl"
|
||||||
|
"net.lutris.Lutris"
|
||||||
{
|
{
|
||||||
appId = "org.unmojang.FjordLauncher";
|
appId = "org.unmojang.FjordLauncher";
|
||||||
origin = "hero-persson";
|
origin = "hero-persson";
|
||||||
@ -59,38 +58,32 @@
|
|||||||
Context = {
|
Context = {
|
||||||
sockets = ["wayland" "!x11" "!fallback-x11"];
|
sockets = ["wayland" "!x11" "!fallback-x11"];
|
||||||
filesystems = [
|
filesystems = [
|
||||||
"xdg-run/pipewire-0"
|
"!home"
|
||||||
|
"!host"
|
||||||
|
"!~/.ssh"
|
||||||
|
"/nix/store:ro"
|
||||||
"xdg-config/gtk-3.0:ro"
|
"xdg-config/gtk-3.0:ro"
|
||||||
"xdg-config/gtk-4.0:ro"
|
"xdg-config/gtk-4.0:ro"
|
||||||
# "~/.local/share/fonts:ro"
|
"xdg-run/pipewire-0"
|
||||||
"~/.local/share/icons:ro"
|
"~/.local/share/icons:ro"
|
||||||
# "~/.nix-profile/share/icons:ro"
|
|
||||||
# "~/.nix-profile/share/fonts:ro"
|
|
||||||
"/nix/store:ro"
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
Environment = {
|
Environment = {
|
||||||
XCURSOR_PATH = "/run/host/user-share/icons:/run/host/share/icons";
|
|
||||||
ELECTRON_OZONE_PLATFORM_HINT = "wayland";
|
ELECTRON_OZONE_PLATFORM_HINT = "wayland";
|
||||||
#GTK_THEME = "adw-gtk3";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
"io.github.martchus.syncthingtray".Context.filesystems = ["/storage/games/heroic/Factorio/game/saves"];
|
|
||||||
"org.octave.Octave".Context.sockets = ["x11"];
|
|
||||||
"org.octave.Octave".Environment = {QT_QPA_PLATFORM = "xcb";};
|
|
||||||
"com.valvesoftware.Steam" = {
|
|
||||||
Context = {
|
|
||||||
sockets = ["x11" "wayland"];
|
|
||||||
filesystems = ["/storage/games/steam"];
|
|
||||||
};
|
|
||||||
Environment = {
|
|
||||||
STEAM_FORCE_DESKTOPUI_SCALING = "1.3";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
"org.signal.Signal" = {
|
"org.signal.Signal" = {
|
||||||
Environment = {
|
Environment.SIGNAL_PASSWORD_STORE = "gnome-libsecret";
|
||||||
SIGNAL_PASSWORD_STORE = "gnome-libsecret";
|
};
|
||||||
};
|
"com.obsproject.Studio" = {
|
||||||
|
Context.filesystems = ["~/vids"];
|
||||||
|
};
|
||||||
|
"com.logseq.Logseq" = {
|
||||||
|
Context.filesystems = [
|
||||||
|
"~/docs/logseq"
|
||||||
|
"~/docs/nure/2025/logseq"
|
||||||
|
"~/syncthing/logseq"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
"net.lutris.Lutris".Context = {
|
"net.lutris.Lutris".Context = {
|
||||||
sockets = ["x11" "wayland"];
|
sockets = ["x11" "wayland"];
|
||||||
@ -101,10 +94,7 @@
|
|||||||
filesystems = ["/storage/games/heroic" "~/games/heroic"];
|
filesystems = ["/storage/games/heroic" "~/games/heroic"];
|
||||||
};
|
};
|
||||||
"com.usebottles.Bottles" = {
|
"com.usebottles.Bottles" = {
|
||||||
Context = {
|
Context.sockets = ["x11" "wayland"];
|
||||||
sockets = ["x11" "wayland"];
|
|
||||||
filesystems = ["/home/user/docs/nure/tex-template/assets/BridgeKSG"];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -1,16 +1,7 @@
|
|||||||
{inputs, ...}: {
|
{
|
||||||
imports = with inputs; [
|
imports = [
|
||||||
nix-index-database.hmModules.nix-index
|
../../../dunamis/users/user/common.nix
|
||||||
self.homeModules.desktop
|
../../../dunamis/users/user/programs.nix
|
||||||
self.homeModules.programs
|
|
||||||
./programs.nix
|
|
||||||
./flatpak.nix
|
./flatpak.nix
|
||||||
];
|
];
|
||||||
desktop.niri.enable = true;
|
|
||||||
home = {
|
|
||||||
stateVersion = "25.05";
|
|
||||||
sessionPath = [
|
|
||||||
"$HOME/.local/bin"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
@ -1,77 +0,0 @@
|
|||||||
{pkgs, ...}: {
|
|
||||||
shell = {
|
|
||||||
fish.enable = true;
|
|
||||||
#nushell.enable = true;
|
|
||||||
oh-my-posh.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
console.yazi.enable = true;
|
|
||||||
|
|
||||||
stylix.targets.fzf.enable = false;
|
|
||||||
services.ssh-agent.enable = true;
|
|
||||||
services.pueue.enable = true;
|
|
||||||
|
|
||||||
syncthing.enable = true;
|
|
||||||
|
|
||||||
programs = {
|
|
||||||
bat.enable = true;
|
|
||||||
btop = {
|
|
||||||
enable = true;
|
|
||||||
settings.update_ms = 200;
|
|
||||||
};
|
|
||||||
eza.enable = true;
|
|
||||||
fd.enable = true;
|
|
||||||
fzf = {
|
|
||||||
enable = true;
|
|
||||||
defaultOptions = ["--color=16"];
|
|
||||||
};
|
|
||||||
pay-respects.enable = true;
|
|
||||||
nix-index.enable = true;
|
|
||||||
nix-index-database.comma.enable = true;
|
|
||||||
gitui.enable = true;
|
|
||||||
git = {
|
|
||||||
enable = true;
|
|
||||||
delta.enable = true;
|
|
||||||
signing.format = "ssh";
|
|
||||||
aliases = {
|
|
||||||
cl = "clone";
|
|
||||||
co = "checkout";
|
|
||||||
pom = "push origin main";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
jujutsu.enable = true;
|
|
||||||
ripgrep.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
terminal = {
|
|
||||||
ghostty.enable = true;
|
|
||||||
kitty.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
editor = {
|
|
||||||
helix.enable = true;
|
|
||||||
# neve.enable = true;
|
|
||||||
zed.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
alejandra # nix formatter in rust
|
|
||||||
flatpak # flatpak cli
|
|
||||||
trashy # trash cli in rust
|
|
||||||
devenv # programming deps in rust
|
|
||||||
procs # ps in rust
|
|
||||||
ouch # archive manager in runt
|
|
||||||
dust # du in rust
|
|
||||||
fend # calc in rust
|
|
||||||
moar # better pager (in go)
|
|
||||||
just # make in rust
|
|
||||||
rbw # bitwarden cli in rust
|
|
||||||
pinentry-qt # pinentry for rbw
|
|
||||||
vial # qmk keyboard configuring app
|
|
||||||
jj-fzf # fuzzy finder jujutsu tui
|
|
||||||
waycheck # check wayland protocols
|
|
||||||
pika-backup # borg gui in rust
|
|
||||||
virt-manager # libvirt gui
|
|
||||||
];
|
|
||||||
systemd.user.settings.Manager.DefaultEnvironment.PAGER = "moar";
|
|
||||||
}
|
|
Reference in New Issue
Block a user