assertions
This commit is contained in:
@@ -10,60 +10,74 @@
|
||||
let
|
||||
inherit (lib.${namespace}) enabled;
|
||||
isArm = ("aarch64-linux" == system) || ("aarch64-darwin" == system);
|
||||
# Non-login / system accounts (root, nixos installer, etc.) should not get
|
||||
# desktop packages, tmux, nh, kdeconnect, nextcloud-client, etc.
|
||||
# Detect them by username so individual host home files are not needed.
|
||||
isSystemUser = lib.elem config.home.username [
|
||||
"root"
|
||||
"nixos"
|
||||
];
|
||||
in
|
||||
{
|
||||
home = {
|
||||
enableNixpkgsReleaseCheck = lib.mkDefault false;
|
||||
homeDirectory = lib.mkDefault "/home/${config.home.username}";
|
||||
homeDirectory = lib.mkDefault (
|
||||
if config.home.username == "root" then "/root" else "/home/${config.home.username}"
|
||||
);
|
||||
packages =
|
||||
with pkgs;
|
||||
[
|
||||
age
|
||||
clinfo
|
||||
cpufetch
|
||||
dbus
|
||||
deadnix
|
||||
lm_sensors
|
||||
nano
|
||||
nebula
|
||||
nix-prefetch-scripts
|
||||
nixfmt
|
||||
pciutils
|
||||
protonup-ng
|
||||
rsync
|
||||
smartmontools
|
||||
sops
|
||||
tailscale
|
||||
tree
|
||||
usbutils
|
||||
vim
|
||||
vulkan-tools
|
||||
wget
|
||||
]
|
||||
++ (
|
||||
if hasDestopEnvironment then
|
||||
(
|
||||
if isSystemUser then
|
||||
[ ]
|
||||
else
|
||||
[
|
||||
boxbuddy
|
||||
stable.chromium
|
||||
firefox
|
||||
gamescope
|
||||
gamescope-wsi
|
||||
gparted
|
||||
mission-center
|
||||
parted
|
||||
vesktop
|
||||
age
|
||||
clinfo
|
||||
cpufetch
|
||||
dbus
|
||||
deadnix
|
||||
lm_sensors
|
||||
nano
|
||||
nebula
|
||||
nix-prefetch-scripts
|
||||
nixfmt
|
||||
pciutils
|
||||
protonup-ng
|
||||
rsync
|
||||
smartmontools
|
||||
sops
|
||||
tailscale
|
||||
tree
|
||||
usbutils
|
||||
vim
|
||||
vulkan-tools
|
||||
wget
|
||||
]
|
||||
++ (
|
||||
if !isArm then
|
||||
if (hasDestopEnvironment) then
|
||||
[
|
||||
# goverlay
|
||||
# winboat
|
||||
boxbuddy
|
||||
stable.chromium
|
||||
firefox
|
||||
gamescope
|
||||
gamescope-wsi
|
||||
gparted
|
||||
mission-center
|
||||
parted
|
||||
vesktop
|
||||
]
|
||||
++ (
|
||||
if !isArm then
|
||||
[
|
||||
# goverlay
|
||||
# winboat
|
||||
]
|
||||
else
|
||||
[ ]
|
||||
)
|
||||
else
|
||||
[ ]
|
||||
)
|
||||
else
|
||||
[ ]
|
||||
);
|
||||
|
||||
stateVersion = lib.mkDefault "23.11";
|
||||
@@ -74,21 +88,19 @@ in
|
||||
# standalone homes don't load the nix-index-database HM module).
|
||||
# Set it per-host in homes that explicitly load the module.
|
||||
btop = {
|
||||
enable = lib.mkDefault true;
|
||||
enable = lib.mkDefault (!isSystemUser);
|
||||
package = pkgs.btop;
|
||||
};
|
||||
fastfetch = lib.mkDefault enabled;
|
||||
fastfetch.enable = lib.mkDefault (!isSystemUser);
|
||||
home-manager = lib.mkDefault enabled;
|
||||
java = {
|
||||
enable = lib.mkDefault true;
|
||||
};
|
||||
mangohud.enable = lib.mkDefault hasDestopEnvironment;
|
||||
password-store = enabled;
|
||||
java.enable = lib.mkDefault (!isSystemUser);
|
||||
mangohud.enable = lib.mkDefault (hasDestopEnvironment && !isSystemUser);
|
||||
password-store.enable = lib.mkDefault (!isSystemUser);
|
||||
nh = {
|
||||
enable = true;
|
||||
enable = lib.mkDefault (!isSystemUser);
|
||||
flake = "/etc/nixos";
|
||||
clean = {
|
||||
enable = true;
|
||||
enable = lib.mkDefault (!isSystemUser);
|
||||
extraArgs = "--keep 5";
|
||||
};
|
||||
};
|
||||
@@ -105,7 +117,7 @@ in
|
||||
};
|
||||
|
||||
tmux = {
|
||||
enable = lib.mkDefault true;
|
||||
enable = lib.mkDefault (!isSystemUser);
|
||||
terminal = "screen-256color";
|
||||
sensibleOnTop = true;
|
||||
focusEvents = true;
|
||||
@@ -127,7 +139,7 @@ in
|
||||
tmuxPlugins.better-mouse-mode
|
||||
];
|
||||
extraConfig = ''
|
||||
set -g status-right '#[fg=black,bg=color15] #{cpu_percentage} %H:%M '
|
||||
set -g status-right '#[fg=black,bg=color15] #{cpu_percentage} %H:%M '
|
||||
run-shell ${pkgs.tmuxPlugins.cpu}/share/tmux-plugins/cpu/cpu.tmux
|
||||
set -g default-terminal "xterm-256color"
|
||||
set -ga terminal-overrides ",*256col*:Tc"
|
||||
@@ -145,11 +157,13 @@ in
|
||||
};
|
||||
|
||||
services = {
|
||||
nextcloud-client.enable = false; # lib.mkDefault hasDestopEnvironment;
|
||||
pass-secret-service = lib.mkDefault enabled;
|
||||
# nextcloud-client is disabled by default for all users; systems that
|
||||
# want it enabled must opt in explicitly in their home configuration.
|
||||
nextcloud-client.enable = lib.mkDefault false;
|
||||
pass-secret-service.enable = lib.mkDefault (!isSystemUser);
|
||||
kdeconnect = {
|
||||
enable = lib.mkDefault hasDestopEnvironment;
|
||||
indicator = lib.mkDefault hasDestopEnvironment;
|
||||
enable = lib.mkDefault (hasDestopEnvironment && !isSystemUser);
|
||||
indicator = lib.mkDefault (hasDestopEnvironment && !isSystemUser);
|
||||
package = pkgs.kdePackages.kdeconnect-kde;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -8,12 +8,10 @@
|
||||
}:
|
||||
let
|
||||
isArm = ("aarch64-linux" == system) || ("aarch64-darwin" == system);
|
||||
isDarwin = ("aarch64-darwin" == system);
|
||||
|
||||
x86_only = with pkgs; [
|
||||
vscode-extensions.redhat.vscode-xml
|
||||
];
|
||||
open-remote-ssh = pkgs.${namespace}.open-remote-ssh;
|
||||
in
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
@@ -50,27 +48,27 @@ in
|
||||
nix-vscode-extensions.open-vsx.jeanp413.open-remote-ssh
|
||||
]
|
||||
++ (if !isArm then x86_only else [ ]);
|
||||
# ++ (if !isDarwin then [ open-remote-ssh ] else [ ]);
|
||||
# ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
|
||||
# {
|
||||
# name = "copilot-mcp";
|
||||
# publisher = "automatalabs";
|
||||
# version = "0.0.49";
|
||||
# sha256 = "sha256-+G2OQl5SCN7bh7MzGdYiRclIZefBE7lWnGg1kNpCvnA=";
|
||||
# }
|
||||
# {
|
||||
# name = "mcp-server-runner";
|
||||
# publisher = "zebradev";
|
||||
# version = "0.1.0";
|
||||
# sha256 = "sha256-StydVt3VzQUSS/pYp76jnIwtZlEj8gWAGzOARs93J+E=";
|
||||
# }
|
||||
# {
|
||||
# name = "claude-dev";
|
||||
# publisher = "saoudrizwan";
|
||||
# version = "3.17.9";
|
||||
# sha256 = "sha256-y3bFtMe5vZrO3DFb31KDvkzjD2jM76wK89mKhgJXC70=";
|
||||
# }
|
||||
# ];
|
||||
# ++ (if !isDarwin then [ open-remote-ssh ] else [ ]);
|
||||
# ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
|
||||
# {
|
||||
# name = "copilot-mcp";
|
||||
# publisher = "automatalabs";
|
||||
# version = "0.0.49";
|
||||
# sha256 = "sha256-+G2OQl5SCN7bh7MzGdYiRclIZefBE7lWnGg1kNpCvnA=";
|
||||
# }
|
||||
# {
|
||||
# name = "mcp-server-runner";
|
||||
# publisher = "zebradev";
|
||||
# version = "0.1.0";
|
||||
# sha256 = "sha256-StydVt3VzQUSS/pYp76jnIwtZlEj8gWAGzOARs93J+E=";
|
||||
# }
|
||||
# {
|
||||
# name = "claude-dev";
|
||||
# publisher = "saoudrizwan";
|
||||
# version = "3.17.9";
|
||||
# sha256 = "sha256-y3bFtMe5vZrO3DFb31KDvkzjD2jM76wK89mKhgJXC70=";
|
||||
# }
|
||||
# ];
|
||||
|
||||
userSettings = {
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
namespace,
|
||||
...
|
||||
}:
|
||||
|
||||
@@ -14,12 +14,42 @@
|
||||
programs.wlogout = {
|
||||
enable = false;
|
||||
layout = {
|
||||
lock = { label = "lock"; action = "hyprlock --immediate"; text = "Lock"; keybind = "l"; };
|
||||
hibernate = { label = "hibernate"; action = "systemctl hibernate"; text = "Hibernate"; keybind = "h"; };
|
||||
logout = { label = "logout"; action = "sleep 1; hyprctl dispatch exit"; text = "Logout"; keybind = "e"; };
|
||||
shutdown = { label = "shutdown"; action = "systemctl poweroff"; text = "Shutdown"; keybind = "s"; };
|
||||
suspend = { label = "suspend"; action = "systemctl suspend"; text = "Suspend"; keybind = "u"; };
|
||||
reboot = { label = "reboot"; action = "reboot"; text = "Reboot"; keybind = "r"; };
|
||||
lock = {
|
||||
label = "lock";
|
||||
action = "hyprlock --immediate";
|
||||
text = "Lock";
|
||||
keybind = "l";
|
||||
};
|
||||
hibernate = {
|
||||
label = "hibernate";
|
||||
action = "systemctl hibernate";
|
||||
text = "Hibernate";
|
||||
keybind = "h";
|
||||
};
|
||||
logout = {
|
||||
label = "logout";
|
||||
action = "sleep 1; hyprctl dispatch exit";
|
||||
text = "Logout";
|
||||
keybind = "e";
|
||||
};
|
||||
shutdown = {
|
||||
label = "shutdown";
|
||||
action = "systemctl poweroff";
|
||||
text = "Shutdown";
|
||||
keybind = "s";
|
||||
};
|
||||
suspend = {
|
||||
label = "suspend";
|
||||
action = "systemctl suspend";
|
||||
text = "Suspend";
|
||||
keybind = "u";
|
||||
};
|
||||
reboot = {
|
||||
label = "reboot";
|
||||
action = "reboot";
|
||||
text = "Reboot";
|
||||
keybind = "r";
|
||||
};
|
||||
};
|
||||
style = ''
|
||||
* {
|
||||
|
||||
Reference in New Issue
Block a user