Minimal with flake update

This commit is contained in:
2025-10-14 11:07:12 +02:00
parent c266448821
commit f8557c66ea
14 changed files with 178 additions and 310 deletions

24
flake.lock generated
View File

@@ -134,11 +134,11 @@
]
},
"locked": {
"lastModified": 1756245065,
"narHash": "sha256-aAZNbGcWrVRZgWgkQbkabSGcDVRDMgON4BipMy69gvI=",
"lastModified": 1758463745,
"narHash": "sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "54b2879ce622d44415e727905925e21b8f833a98",
"rev": "3b955f5f0a942f9f60cdc9cacb7844335d0f21c3",
"type": "github"
},
"original": {
@@ -449,11 +449,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1756469547,
"narHash": "sha256-YvtD2E7MYsQ3r7K9K2G7nCslCKMPShoSEAtbjHLtH0k=",
"lastModified": 1760139962,
"narHash": "sha256-4xggC56Rub3WInz5eD7EZWXuLXpNvJiUPahGtMkwtuc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "41d292bfc37309790f70f4c120b79280ce40af16",
"rev": "7e297ddff44a3cc93673bb38d0374df8d0ad73e4",
"type": "github"
},
"original": {
@@ -479,11 +479,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1756542300,
"narHash": "sha256-tlOn88coG5fzdyqz6R93SQL5Gpq+m/DsWpekNFhqPQk=",
"lastModified": 1760284886,
"narHash": "sha256-TK9Kr0BYBQ/1P5kAsnNQhmWWKgmZXwUQr4ZMjCzWf2c=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "d7600c775f877cd87b4f5a831c28aa94137377aa",
"rev": "cf3f5c4def3c7b5f1fc012b3d839575dbe552d43",
"type": "github"
},
"original": {
@@ -612,11 +612,11 @@
]
},
"locked": {
"lastModified": 1754988908,
"narHash": "sha256-t+voe2961vCgrzPFtZxha0/kmFSHFobzF00sT8p9h0U=",
"lastModified": 1760393368,
"narHash": "sha256-8mN3kqyqa2PKY0wwZ2UmMEYMcxvNTwLaOrrDsw6Qi4E=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "3223c7a92724b5d804e9988c6b447a0d09017d48",
"rev": "ab8d56e85b8be14cff9d93735951e30c3e86a437",
"type": "github"
},
"original": {

View File

@@ -19,6 +19,7 @@
"github:xremap/nix-flake?rev=8001f37b1ffe86e76b62f36afadee2f4acf90e70"; # One commit behind head
};
# Understand what everything does
outputs =
{ self, nixpkgs, nixpkgs-unstable, sops-nix, home-manager, ... }@inputs:
let

View File

@@ -9,12 +9,6 @@
./../../modules/essential.nix
./../../modules/common/sops.nix
# This is buggy right now
#./../../modules/services/webdav.nix
# Not working right now due to nvidia problems
# It worked fine on another machine thats why I am wondering
#./../../modules/services/ai.nix
./../../modules/graphics/workstation.nix
./../../modules/hardware/nvidia.nix
@@ -23,26 +17,6 @@
];
networking.hostName = "minoxy";
enableCuda = false;
systemd.targets.sleep.enable = true;
systemd.targets.suspend.enable = true;
programs.ydotool.enable = true;
services.input-remapper.enable = true;
fileSystems."/shared" = {
device = "/dev/disk/by-uuid/8CEA-13E3"; # use lsblk -f
fsType = "exfat";
options = [ "defaults" "uid=1000" "gid=100" "umask=000" ];
};
# Testing
#environment.etc."mnt/jousb".source = "/mnt/jousb"; # ensures directory exists
#services.udev.extraRules = ''
# ACTION=="add", SUBSYSTEM=="block", ENV{ID_FS_LABEL}=="JOUSB", RUN+="${pkgs.mount}/bin/mount /dev/disk/by-label/JOUSB /mnt/jousb"
# ACTION=="remove", SUBSYSTEM=="block", ENV{ID_FS_LABEL}=="JOUSB", RUN+="${pkgs.umount}/bin/umount /mnt/jousb"
#'';
virtualisation.docker.enable = true;
virtualisation.docker.storageDriver = "btrfs";

View File

@@ -4,41 +4,45 @@
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod" "sr_mod" ];
boot.initrd.availableKernelModules =
[ "xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod" "sr_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
# FUll btrfs config
fileSystems."/" =
{ device = "/dev/disk/by-uuid/e52b1440-66f3-4129-b3c0-fba3491e2bbc";
fsType = "btrfs";
options = [ "subvol=root" ];
};
fileSystems."/home" =
{ device = "/dev/disk/by-uuid/e52b1440-66f3-4129-b3c0-fba3491e2bbc";
fsType = "btrfs";
options = [ "subvol=home" ];
};
fileSystems."/nix" =
{ device = "/dev/disk/by-uuid/e52b1440-66f3-4129-b3c0-fba3491e2bbc";
fsType = "btrfs";
options = [ "subvol=nix" ];
};
fileSystems."/shared" = {
device = "/dev/disk/by-uuid/8CEA-13E3"; # use lsblk -f
fsType = "exfat";
options = [ "defaults" "uid=1000" "gid=100" "umask=000" ];
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/3091-F0BF";
fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ];
};
# FUll btrfs config
fileSystems."/" = {
device = "/dev/disk/by-uuid/e52b1440-66f3-4129-b3c0-fba3491e2bbc";
fsType = "btrfs";
options = [ "subvol=root" ];
};
fileSystems."/home" = {
device = "/dev/disk/by-uuid/e52b1440-66f3-4129-b3c0-fba3491e2bbc";
fsType = "btrfs";
options = [ "subvol=home" ];
};
fileSystems."/nix" = {
device = "/dev/disk/by-uuid/e52b1440-66f3-4129-b3c0-fba3491e2bbc";
fsType = "btrfs";
options = [ "subvol=nix" ];
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/3091-F0BF";
fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ];
};
swapDevices =
[ { device = "/dev/disk/by-uuid/3e591e27-c6c5-4e28-900b-f899bc3d5e70"; }
];
[{ device = "/dev/disk/by-uuid/3e591e27-c6c5-4e28-900b-f899bc3d5e70"; }];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
@@ -49,5 +53,6 @@
# networking.interfaces.wlp112s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
hardware.cpu.intel.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@@ -16,9 +16,7 @@
./../../modules/laptop/battery.nix
./../../modules/graphics/workstation.nix
#./../../modules/services/webdav.nix
./../../modules/services/scanning.nix
./../../modules/services/printer.nix
];
networking.hostName = "nixyos";

View File

@@ -11,31 +11,19 @@
./../../modules/hardware/xremap.nix
./../../modules/hardware/boot.nix
./../../modules/graphics/workstation.nix
./../../modules/laptop/powersave.nix
./../../modules/laptop/battery.nix
#./../../modules/services/webdav.nix
./../../modules/services/scanning.nix
./../../modules/services/printer.nix
];
networking.hostName = "thinix";
batMode = "double";
# Cannot have this and tlp
#services.power-profiles-daemon.enable = true;
programs.gnupg.agent = {
enable = true;
pinentryPackage = with pkgs; pinentry-all;
enableSSHSupport = true;
};
swapDevices = [{
device = "/swapfile";
size = 4096;
}];
system.stateVersion = "24.11";
system.stateVersion = "24.11"; # Dont change this
}

View File

@@ -5,10 +5,18 @@
services.locate.enable = true;
services.openssh.enable = true;
hardware.enableAllFirmware = true;
# Nix fun
nixpkgs.config.allowUnfree = true;
nix.settings.experimental-features = [ "flakes" "nix-command" ];
programs.gnupg.agent = {
enable = true;
pinentryPackage = with pkgs; pinentry-all;
enableSSHSupport = true;
};
time.timeZone = "Europe/Berlin";
programs.nix-ld.enable = true; # Linking support
@@ -16,14 +24,16 @@
services.avahi.enable = true;
services.avahi.nssmdns4 = true;
environment = { systemPackages = with pkgs; [ xorg.xrandr git starship zoxide rsync ]; };
environment = {
systemPackages = with pkgs; [ yazi tmux git starship zoxide rsync ];
};
nix.optimise.automatic = true;
nix.gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 14d"; # Two weeks cache then forget
options = "--delete-older-than 7d"; # Two weeks cache then forget
};
networking = { networkmanager = { enable = true; }; };

View File

@@ -6,10 +6,6 @@ in {
enableCuda = mkOption {
type = types.bool;
default = false;
description = ''
Enable CUDA support for Blender and other packages.
Warning: This can cause very long build times.
'';
};
nvidiaOpen = mkOption {
type = types.bool;
@@ -29,16 +25,5 @@ in {
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
# Apply CUDA-specific settings if enabled
nixpkgs.config.cudaSupport = config.enableCuda;
hardware.enableAllFirmware = true;
environment.systemPackages = (if config.enableCuda then
[
(pkgs.blender.override { cudaSupport = true; })
]
else
[ ]);
};
}

View File

@@ -1,10 +0,0 @@
{ ... }:
{
imports = [ ../hardware/nvidia.nix ];
services.ollama = {
enable = true;
acceleration = "cuda";
};
}

View File

@@ -6,4 +6,6 @@
hardware.sane.extraBackends = [ pkgs.sane-airscan ];
hardware.sane.disabledDefaultBackends = [ "escl" ];
services.udev.packages = [ pkgs.sane-airscan ];
services.printing.enable = true;
}

View File

@@ -1,5 +0,0 @@
{ ... }:
{
services.printing.enable = true;
}

View File

@@ -1,34 +0,0 @@
{ ... }:
{
# For web mounting
services.davfs2.enable = true;
# Load the secret
sops = {
secrets = {
webdav_authstring = {
mode = "0600";
path = "/etc/davfs2/secrets";
};
};
};
systemd.mounts = [{
description = "Webdav mount point";
after = [ "network-online.target" ];
wants = [ "network-online.target" ];
what = "https://dav.hahn1.one";
where = "/webdav";
type = "davfs";
options = "uid=1000,gid=1000,file_mode=0664,dir_mode=2775,_netdev";
mountConfig.TimeoutSec = "5s";
}];
systemd.automounts = [{
description = "Webdav automount";
where = "/webdav";
wantedBy = [ "multi-user.target" ];
automountConfig = { TimeoutIdleSec = "2m"; };
}];
}

View File

@@ -20,6 +20,18 @@
};
};
services.udiskie = {
enable = true;
settings = {
# workaround for
# https://github.com/nix-community/home-manager/issues/632
program_options = {
# replace with your favorite file manager
file_manager = "${pkgs.nemo-with-extensions}/bin/nemo";
};
};
};
xdg.desktopEntries.fehcustom = {
name = "FehCustom";
terminal = false;
@@ -83,5 +95,5 @@
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
home.stateVersion = "24.11";
home.stateVersion = "24.11"; # Dont change
}

View File

@@ -2,185 +2,127 @@
{
home.packages = with pkgs; [
weechat
clang
libcxx
just
deno
########################################
# GUI #
########################################
# --- Core GUI ---
alacritty
ffmpeg
pavucontrol
iamb
sdkmanager
air
nmap
wakeonlan
wiki-tui
ansible
terraform
android-tools
vscode
libreoffice
unstable.sioyek
zathura
qalculate-qt
# --- Communication & Internet ---
discord
thunderbird
tor-browser
unstable.signal-desktop
qbittorrent
ausweisapp
# --- Media & Desktop Tools ---
simple-scan
obsidian
rclone
sops
gimp
audio-recorder
cheese
age
git-lfs
tor
torsocks
w3m
timer
qbittorrent
discord
blender
audacity
zoom-us
vlc
thunderbird
mpv
obsidian
obs-studio
prismlauncher
inkscape
shotcut
todo-txt-cli
systemctl-tui
acpi
feh
watson
slides
imagemagick
xdragon
luarocks
gradle
openjdk
findutils.locate
ethtool
qalculate-qt
wl-clip-persist
btop
fastfetch
zathura
eza
fuzzel
networkmanagerapplet
gdu
hyprpaper
tokei
fzf
glibc
gnumake
ninja
cmake
meson
lld
vscode-langservers-extracted
clang
clang-tools # Provides clangd
go
bitwarden-desktop
libinput
cudaPackages.cudatoolkit
ydotool
input-remapper
ausweisapp
spotify
pgadmin4
dig
lazydocker
libtool
love
lua
zig
cargo
tor-browser
bitwarden-cli
rpi-imager
cppcheck
lazygit
nodejs
ripgrep
signal-desktop
unison
php
intelephense
trash-cli
# Full haskell development environment
haskellPackages.ghc
haskellPackages.cabal-install
haskellPackages.stack
haskellPackages.hoogle
haskellPackages.haskell-language-server
python3
fd
ttyper
zoxide
vim
tofi
bat
dunst
killall
libreoffice
perl
pipx
waybar
stow
brightnessctl
anki
unstable.typst
mediainfo
powertop
exiftool
curl
sioyek
xournalpp
rnote
emacs
hyprshot
hyprpicker
hyprsunset
waybar
dunst
networkmanagerapplet
hyprpaper
pavucontrol
feh
xdragon
tofi
fuzzel
wl-clipboard
########################################
# CLI #
########################################
mpv
gitui
keepassxc
kitty
unstable.yazi
# --- Essentials & Navigation ---
ripgrep
fd
fzf
eza
bat
vim
neovim
htop
alpine
wget
tmux
stow
wl-clipboard
wl-clip-persist
killall
trash-cli
file
zip
xz
unzip
file
gnupg
# --- System & Network ---
btop
fastfetch
acpi
brightnessctl
ethtool
findutils
nmap
wakeonlan
tor
torsocks
w3m
curl
wget
timer
nix-output-monitor
# --- Productivity & Misc ---
just
todo-txt-cli
systemctl-tui
wiki-tui
watson
slides
imagemagick
bitwarden-cli
lazydocker
lazygit
gitui
unstable.yazi
# --- Languages & Package Managers ---
python3
nodejs
go
lua
luarocks
deno
pipx
gradle
openjdk
# --- Build Tools ---
clang
clang-tools
gnumake
cmake
ninja
meson
lld
# --- DevOps & Versioning ---
git-lfs
sops
age
ansible
android-tools
sdkmanager
air
vscode-langservers-extracted
];
}