Cleanup of code and modules. Fully modular config now. Cleanup unused and redundant packages. Fix shell alias

This commit is contained in:
2025-08-31 15:00:59 +02:00
parent ffd8112f61
commit ad08a4fa5c
9 changed files with 253 additions and 303 deletions

View File

@@ -1,31 +1,30 @@
{ ... }: { ... }:
{ {
imports = [ imports = [
./hardware-configuration.nix ./hardware-configuration.nix
./../../user/users.nix ./../../user/users.nix
./../../modules/common.nix ./../../modules/common.nix
./../../modules/hardware/xremap.nix ./../../modules/services/webdav.nix
./../../modules/services/webdav.nix
./../../modules/graphics/workstation.nix
./../../modules/hardware/nvidia.nix ./../../modules/graphics/workstation.nix
];
networking.hostName = "minoxy"; ./../../modules/hardware/nvidia.nix
./../../modules/hardware/boot.nix
./../../modules/hardware/xremap.nix
];
boot.loader.systemd-boot.enable = true; networking.hostName = "minoxy";
boot.loader.efi.canTouchEfiVariables = true;
systemd.targets.sleep.enable = true; systemd.targets.sleep.enable = true;
systemd.targets.suspend.enable = true; systemd.targets.suspend.enable = true;
virtualisation.docker.enable = true; virtualisation.docker.enable = true;
virtualisation.docker.storageDriver = "btrfs"; virtualisation.docker.storageDriver = "btrfs";
# Never change this! # Never change this!
system.stateVersion = "25.05"; system.stateVersion = "25.05";
} }

View File

@@ -9,25 +9,18 @@
./../../modules/common.nix ./../../modules/common.nix
./../../modules/hardware/xremap.nix ./../../modules/hardware/xremap.nix
./../../modules/hardware/battery.nix ./../../modules/hardware/boot.nix
./../../modules/laptop/powersave.nix
./../../modules/laptop/battery.nix
./../../modules/graphics/workstation.nix ./../../modules/graphics/workstation.nix
./../../modules/services/webdav.nix.nix ./../../modules/services/webdav.nix
./../../modules/services/scanning.nix.nix ./../../modules/services/scanning.nix
]; ];
networking.hostName = "nixyos"; networking.hostName = "nixyos";
batMode = "single";
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking = {
networkmanager = {
wifi.powersave = true;
};
};
# Older machine # Older machine
system.stateVersion = "24.11"; system.stateVersion = "24.11";

View File

@@ -9,10 +9,13 @@
./../../modules/common.nix ./../../modules/common.nix
./../../modules/hardware/xremap.nix ./../../modules/hardware/xremap.nix
./../../modules/hardware/battery.nix ./../../modules/hardware/boot.nix
./../../modules/graphics/workstation.nix ./../../modules/graphics/workstation.nix
./../../modules/laptop/powersave.nix
./../../modules/laptop/battery.nix
./../../modules/services/webdav.nix.nix ./../../modules/services/webdav.nix.nix
./../../modules/services/scanning.nix.nix ./../../modules/services/scanning.nix.nix
]; ];
@@ -20,21 +23,12 @@
networking.hostName = "thinix"; networking.hostName = "thinix";
batMode = "double"; batMode = "double";
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
programs.gnupg.agent = { programs.gnupg.agent = {
enable = true; enable = true;
pinentryPackage = with pkgs; pinentry-all; pinentryPackage = with pkgs; pinentry-all;
enableSSHSupport = true; enableSSHSupport = true;
}; };
networking = {
networkmanager = {
wifi.powersave = true;
};
};
swapDevices = [ swapDevices = [
{ {
device = "/swapfile"; device = "/swapfile";
@@ -42,6 +36,5 @@
} }
]; ];
# Older machine
system.stateVersion = "24.11"; system.stateVersion = "24.11";
} }

26
modules/hardware/boot.nix Normal file
View File

@@ -0,0 +1,26 @@
{ config, lib, ... }:
let
inherit (lib) mkOption types;
in {
options.bootMode = mkOption {
type = types.enum [ "uefi" "legacy" ];
default = "uefi";
};
config = {
boot.consoleLogLevel = 0;
boot.kernelParams = [ "quiet" "udev.log_level=3" ];
boot.loader = if config.bootMode == "uefi" then {
efi.canTouchEfiVariables = true;
systemd-boot.enable = true;
timeout = 0;
} else {
grub.enable = true;
grub.device = "/dev/sda";
timeout = 0;
};
};
}

View File

@@ -13,11 +13,11 @@
package = config.boot.kernelPackages.nvidiaPackages.stable; package = config.boot.kernelPackages.nvidiaPackages.stable;
}; };
environment.systemPackages = with pkgs; [ #environment.systemPackages = with pkgs; [
(blender.override { # (blender.override {
cudaSupport = true; # cudaSupport = true;
}) # })
]; #];
# This causes very long build times # This causes very long build times
#nixpkgs.config.cudaSupport = true; #nixpkgs.config.cudaSupport = true;

View File

@@ -0,0 +1,9 @@
{ ... }:
{
networking = {
networkmanager = {
wifi.powersave = true;
};
};
}

View File

@@ -1,102 +1,87 @@
{ pkgs, ... }: { pkgs, ... }:
{ {
imports = [ imports = [ ./packages.nix ];
./packages.nix
];
services.gnome-keyring.enable = true; services.gnome-keyring.enable = true;
xdg.mimeApps = { xdg.mimeApps = {
enable = true; enable = true;
defaultApplications = { defaultApplications = {
"text/html" = "firefox.desktop"; "text/html" = "firefox.desktop";
"x-scheme-handler/http" = "firefox.desktop"; "x-scheme-handler/http" = "firefox.desktop";
"x-scheme-handler/https" = "firefox.desktop"; "x-scheme-handler/https" = "firefox.desktop";
"x-scheme-handler/about" = "firefox.desktop"; "x-scheme-handler/about" = "firefox.desktop";
"x-scheme-handler/unknown" = "firefox.desktop"; "x-scheme-handler/unknown" = "firefox.desktop";
"application/pdf" = "sioyek.desktop"; "application/pdf" = "sioyek.desktop";
"application/rnote" = "rnote.desktop"; "application/rnote" = "rnote.desktop";
"video/mp4" = "mpv.desktop"; "video/mp4" = "mpv.desktop";
"image/*" = "fehcustom.desktop"; "image/*" = "fehcustom.desktop";
}; };
}; };
xdg.desktopEntries.fehcustom = { xdg.desktopEntries.fehcustom = {
name = "FehCustom"; name = "FehCustom";
terminal = false; terminal = false;
exec = "${pkgs.feh}/bin/feh -d --keep-zoom-vp --draw-exif --start-at %u"; exec = "${pkgs.feh}/bin/feh -d --keep-zoom-vp --draw-exif --start-at %u";
}; };
home = { home = {
username = "jonas"; username = "jonas";
homeDirectory = "/home/jonas"; homeDirectory = "/home/jonas";
sessionVariables = { pointerCursor = {
EDITOR = "nvim"; gtk.enable = true;
HTTP_HOME = "duckduckgo.com"; name = "catppuccin-frappe-rosewater-cursors";
MANPAGER="nvim +Man!"; package = pkgs.catppuccin-cursors.frappeRosewater;
}; size = 18;
shellAliases = { };
fla = "sudo nixos-rebuild switch --flake '~/nixos#'"; };
};
pointerCursor = {
gtk.enable = true;
name = "catppuccin-frappe-rosewater-cursors";
package = pkgs.catppuccin-cursors.frappeRosewater;
size = 18;
};
};
gtk = { gtk = {
enable = true; enable = true;
iconTheme = { iconTheme = {
package = pkgs.papirus-icon-theme; package = pkgs.papirus-icon-theme;
name = "Papirus-Dark"; name = "Papirus-Dark";
}; };
theme = { theme = {
name = "Adwaita-dark"; name = "Adwaita-dark";
package = pkgs.gnome-themes-extra; package = pkgs.gnome-themes-extra;
}; };
}; };
qt = { qt = {
enable = true; enable = true;
platformTheme.name = "qtct"; platformTheme.name = "qtct";
style.name = "Kvantum"; style.name = "Kvantum";
}; };
xdg.configFile."Kvantum/kvantum.kvconfig".source = (pkgs.formats.ini { }).generate "kvantum.kvconfig" {
General.theme = "Catppuccin-Frappe-Rosewater";
};
xdg.configFile."qt6ct/qt6ct.conf".source = pkgs.writeTextFile {
name = "qt6ct.conf";
text = ''
[Appearance]
color_scheme_path=${pkgs.qt6ct}/share/qt6ct/colors/airy.conf
custom_palette=false
icon_theme=Papirus-Dark
standard_dialogs=default
style=kvantum
'';
};
programs.starship = { xdg.configFile."Kvantum/kvantum.kvconfig".source =
enable = true; (pkgs.formats.ini { }).generate "kvantum.kvconfig" {
settings = { General.theme = "Catppuccin-Frappe-Rosewater";
add_newline = false; };
aws.disabled = true; xdg.configFile."qt6ct/qt6ct.conf".source = pkgs.writeTextFile {
gcloud.disabled = true; name = "qt6ct.conf";
line_break.disabled = true; text =
" [Appearance]\n color_scheme_path=${pkgs.qt6ct}/share/qt6ct/colors/airy.conf\n custom_palette=false\n icon_theme=Papirus-Dark\n standard_dialogs=default\n style=kvantum\n";
};
sudo = { programs.starship = {
disabled = false; enable = true;
symbol = "SUDO "; settings = {
style = "bold red"; add_newline = false;
}; aws.disabled = true;
gcloud.disabled = true;
line_break.disabled = true;
sudo = {
disabled = false;
symbol = "SUDO ";
style = "bold red";
};
}; };
}; };
# Let Home Manager install and manage itself. # Let Home Manager install and manage itself.
programs.home-manager.enable = true; programs.home-manager.enable = true;
home.stateVersion = "24.11"; home.stateVersion = "24.11";
} }

View File

@@ -1,190 +1,135 @@
{ pkgs, ...}: { pkgs, ... }:
{ {
home.packages = with pkgs; [ home.packages = with pkgs; [
weechat weechat
just just
iamb iamb
wiki-tui wiki-tui
vscode vscode
simple-scan simple-scan
obsidian obsidian
rclone rclone
#jujutsu unstable.spotify-player
unstable.spotify-player sops
gimp
audio-recorder
cheese
age
git-lfs
sops tor
gimp torsocks
audio-recorder w3m
cheese timer
age qbittorrent
git-lfs discord
blender
audacity
zoom-us
vlc
thunderbird
obsidian
obs-studio
prismlauncher
inkscape
tor shotcut
torsocks
w3m
timer
qbittorrent
discord
blender
audacity
zoom-us
vlc
thunderbird
obsidian
obs-studio
prismlauncher
inkscape
shotcut todo-txt-cli
systemctl-tui
acpi
feh
papirus-folders watson
todo-txt-cli slides
systemctl-tui
acpi
zsh
feh
watson imagemagick
slides xdragon
imagemagick luarocks
xdragon
luarocks gradle
lua openjdk
gradle findutils.locate
openjdk ethtool
qalculate-qt
wl-clip-persist
btop
fastfetch
zathura
eza
fuzzel
findutils.locate networkmanagerapplet
ethtool gdu
qalculate-qt hyprpaper
wl-clip-persist tokei
btop fzf
fastfetch gcc
zathura gnumake
eza lazygit
fuzzel nodejs
catppuccin-cursors ripgrep
networkmanagerapplet signal-desktop
gdu unison
hyprpaper trash-cli
tokei python3
fzf fd
gcc ttyper
gnumake zoxide
lazygit vim
nodejs tofi
ripgrep bat
signal-desktop dunst
unison killall
trash-cli libreoffice
starship perl
python3 pipx
fd waybar
ttyper stow
zoxide brightnessctl
vim anki
tofi unstable.typst
bat mediainfo
clipse powertop
dunst exiftool
killall curl
libreoffice sioyek
perl
pipx
wpgtk
waybar
stow
brightnessctl
anki
unstable.typst
dnsmasq
davfs2
mediainfo
powertop
#midori
exiftool
gtk4.dev
curl
sioyek
qt6.qtbase
libpulseaudio xournalpp
xournalpp rnote
rnote emacs
libinput cargo
libGL hyprshot
libglvnd hyprpicker
emacs hyprsunset
cargo
hyprshot
hyprpicker
hyprsunset
wl-clipboard
mpv
gitui
keepassxc
kitty
wlsunset
unstable.yazi
neovim
htop
alpine
wget
tmux
zip wl-clipboard
xz
unzip
p7zip
jq mpv
yq-go gitui
keepassxc
kitty
unstable.yazi
neovim
htop
alpine
wget
tmux
mtr zip
iperf3 xz
dnsutils unzip
ldns
aria2
socat
nmap
ipcalc
# Misc file
cowsay gnupg
file
which
gnused
gnutar
gawk
zstd
gnupg
nix-output-monitor nix-output-monitor
];
# Productivity
hugo
glow
iotop
iftop
# System call monitoring
strace
ltrace
lsof
# System tools
sysstat
lm_sensors
pciutils
usbutils
];
} }