4 Commits

15 changed files with 147 additions and 191 deletions

128
flake.lock generated
View File

@@ -9,11 +9,11 @@
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1779903856,
"narHash": "sha256-uRShMtD6xW3ZKZbCQ6sDzKWEnbBXUg3IGfOARYogKhg=",
"lastModified": 1772290697,
"narHash": "sha256-MyLNx13P+pv1RszO1rMd3144NEeU/oU4iL+xOTpRoaU=",
"owner": "ezKEa",
"repo": "aagl-gtk-on-nix",
"rev": "50671fc7f29d686f63ef34b603320d44ad7f2d29",
"rev": "dcb53a4cb4cb09ef7f08328428ba559be5b9f01b",
"type": "github"
},
"original": {
@@ -46,11 +46,11 @@
"cachyos-kernel": {
"flake": false,
"locked": {
"lastModified": 1779781360,
"narHash": "sha256-02SR7VL4wc57NCVMhyVgz6/SVfyGv7mc4h+SmgR2I8g=",
"lastModified": 1773425695,
"narHash": "sha256-O5Fr6f+iS+IVKdB59yqkCaWfkr1SSHD5BLDDlZO7RwU=",
"owner": "CachyOS",
"repo": "linux-cachyos",
"rev": "c7cb822e8ee91d993052becf2661b6f26f98eaa2",
"rev": "3b9ae1ae5d4ee95e1509d350b65c0777dde97628",
"type": "github"
},
"original": {
@@ -62,11 +62,11 @@
"cachyos-kernel-patches": {
"flake": false,
"locked": {
"lastModified": 1779618819,
"narHash": "sha256-/cGZZCyJZS1QATHi+/2Q32NkjrYN2N2PpgFP8Ak4FJc=",
"lastModified": 1773430072,
"narHash": "sha256-0X47YCF1CUnLiQ1M6Lh4hc3ax9aV5DX/wCmMfuMyM1o=",
"owner": "CachyOS",
"repo": "kernel-patches",
"rev": "668b466fb461409329425b50c4a9d8d2c022a739",
"rev": "ac70453c25200f0a30ad38b3caa63020869f0f8a",
"type": "github"
},
"original": {
@@ -196,11 +196,11 @@
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1778716662,
"narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=",
"lastModified": 1772408722,
"narHash": "sha256-rHuJtdcOjK7rAHpHphUb1iCvgkU3GpfvicLMwwnfMT0=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb",
"rev": "f20dc5d9b8027381c474144ecabc9034d6a839a3",
"type": "github"
},
"original": {
@@ -313,11 +313,11 @@
]
},
"locked": {
"lastModified": 1779969295,
"narHash": "sha256-HwIJ3tOcwSMiV75L7KqJXciXR9UfT+d7rwOZMX7cTnA=",
"lastModified": 1773681856,
"narHash": "sha256-+bRqxoFCJFO9ZTFhcCkzNXbDT3b8AEk88fyjB7Is6eo=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "61e2c9659324181e0f0ed911958c536333b1d4f6",
"rev": "57d5560ee92a424fb71fde800acd6ed2c725dfce",
"type": "github"
},
"original": {
@@ -334,11 +334,11 @@
]
},
"locked": {
"lastModified": 1778805320,
"narHash": "sha256-nGFJ01m2CTBKD4ABtcY4vLhHrRN91LKr/pn41PcU78A=",
"lastModified": 1773422513,
"narHash": "sha256-MPjR48roW7CUMU6lu0+qQGqj92Kuh3paIulMWFZy+NQ=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "9846abe15e7d0d36b8acbd4d05f2b87461744c92",
"rev": "ef12a9a2b0f77c8fa3dda1e7e494fca668909056",
"type": "github"
},
"original": {
@@ -379,14 +379,14 @@
"cachyos-kernel-patches": "cachyos-kernel-patches",
"flake-compat": "flake-compat_3",
"flake-parts": "flake-parts_2",
"nixpkgs": "nixpkgs"
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1779910731,
"narHash": "sha256-BSu/X9EyAyAPOjXsuwED4j4IeduP/5KVjTwiQSLkdik=",
"lastModified": 1773597464,
"narHash": "sha256-3SVrc1AMkY1UE36MD4qvmTkY/ZToK2F55Afut5Qm5F8=",
"owner": "xddxdd",
"repo": "nix-cachyos-kernel",
"rev": "a2cdbecf6abb1a1180bf9fe5c3028125416621f1",
"rev": "30468236d5cdd9cb5dea6e757159e04816439146",
"type": "github"
},
"original": {
@@ -404,11 +404,11 @@
]
},
"locked": {
"lastModified": 1777732699,
"narHash": "sha256-2uX/XtOWZ/oy2rerRynVhqVA//ZXZ3Fo60PikLHEPQc=",
"lastModified": 1773603777,
"narHash": "sha256-oXSEbMR/IuHYk9nvrbRhaYBxVK5s63DH2UGOZT2ok48=",
"owner": "nix-community",
"repo": "NixOS-WSL",
"rev": "5482f113fd31ebac131d1ebeb2ae90bf0d5e41f5",
"rev": "0efe7af73d6e4a8d447a22936c5526d73822b0a7",
"type": "github"
},
"original": {
@@ -420,27 +420,27 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1779894193,
"narHash": "sha256-2PixoQSj9hdtoXTu0ZxdI0cmAE6GUUjCODG+rtC1wDc=",
"lastModified": 1744536153,
"narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a09ffe51cfdc37950f14286593605ce64f76cc93",
"rev": "18dd725c29603f582cf1900e0d25f9f1063dbf11",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable-small",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1777168982,
"narHash": "sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ=",
"lastModified": 1772328832,
"narHash": "sha256-e+/T/pmEkLP6BHhYjx6GmwP5ivonQQn0bJdH9YrRB+Q=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "f5901329dade4a6ea039af1433fb087bd9c1fe14",
"rev": "c185c7a5e5dd8f9add5b2f8ebeff00888b070742",
"type": "github"
},
"original": {
@@ -451,11 +451,27 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1779560665,
"narHash": "sha256-tpyBcxPpcQb8ukyNF7DoCwfSY3VPsxHoYwj00Cayv5o=",
"lastModified": 1773563071,
"narHash": "sha256-p4f6smYpck1hw6gYsT2omq01gnlZ1E7HTpssDQ0fP+g=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "64c08a7ca051951c8eae34e3e3cb1e202fe36786",
"rev": "1c6f50e5b62030a50799682b6babc9dcc5a271ae",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable-small",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1773646010,
"narHash": "sha256-iYrs97hS7p5u4lQzuNWzuALGIOdkPXvjz7bviiBjUu8=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "5b2c2d84341b2afb5647081c1386a80d7a8d8605",
"type": "github"
},
"original": {
@@ -500,25 +516,23 @@
"lanzaboote": "lanzaboote",
"nix-cachyos-kernel": "nix-cachyos-kernel",
"nixos-wsl": "nixos-wsl",
"nixpkgs": "nixpkgs_2",
"nixpkgs": "nixpkgs_3",
"snowfall-lib": "snowfall-lib",
"sops-nix": "sops-nix",
"trilium-next-pr": "trilium-next-pr",
"zen-browser": "zen-browser"
}
},
"rust-overlay": {
"inputs": {
"nixpkgs": [
"aagl",
"nixpkgs"
]
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1777605393,
"narHash": "sha256-Hjp0VOOHgHcTrX23iVvnfAudPcuCmfkfpQNFwv2v/ks=",
"lastModified": 1770952264,
"narHash": "sha256-CjymNrJZWBtpavyuTkfPVPaZkwzIzGaf0E/3WgcwM14=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "ff88db34cfa486fc4964a6991cab1678d82eee8c",
"rev": "ec6a3d5cdf14bb5a1dd03652bd3f6351004d2188",
"type": "github"
},
"original": {
@@ -577,11 +591,11 @@
]
},
"locked": {
"lastModified": 1777944972,
"narHash": "sha256-VfGRo1qTBKOe3s2gOv8LSoA6Fk19PvBlwQ1ECN0Evn8=",
"lastModified": 1773698643,
"narHash": "sha256-VCiDjE8kNs8uCAK73Ezk1r3fFuc4JepvW07YFqaN968=",
"owner": "mic92",
"repo": "sops-nix",
"rev": "c591bf665727040c6cc5cb409079acb22dcce33c",
"rev": "8237de83e8200d16fe0c4467b02a1c608ff28044",
"type": "github"
},
"original": {
@@ -620,6 +634,22 @@
"type": "github"
}
},
"trilium-next-pr": {
"locked": {
"lastModified": 1736678965,
"narHash": "sha256-2A687i3Rq0/wqJVvpgaiRPWcfnBBuBhPjKaT8cnd7o0=",
"owner": "FliegendeWurst",
"repo": "nixpkgs",
"rev": "4fcdf706929246476e52e960760b6643cb8395c4",
"type": "github"
},
"original": {
"owner": "FliegendeWurst",
"ref": "trilium-next",
"repo": "nixpkgs",
"type": "github"
}
},
"zen-browser": {
"inputs": {
"home-manager": "home-manager_2",
@@ -628,11 +658,11 @@
]
},
"locked": {
"lastModified": 1779955179,
"narHash": "sha256-cHrbJ8pZrsFWUTJVk7AxWiEg5eiZptPQxtT0YXMIENo=",
"lastModified": 1773695806,
"narHash": "sha256-HYmp4Ym/dlkRIPap7GFznNUNuDTTW0iIcOtHmhRzl3w=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"rev": "c341e3f6516fb1286d25b99d34b111f93028ae87",
"rev": "ced61240cc38dee9e659a7ced0cd9a839c6085d3",
"type": "github"
},
"original": {

View File

@@ -30,6 +30,10 @@
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
trilium-next-pr = {
url = "github:FliegendeWurst/nixpkgs/trilium-next";
# Don't follow nixpkgs as this repo has its own pinned nixpkgs
};
anikki = {
url = "github:Hion-V/Anikki-flake";
inputs.nixpkgs.follows = "nixpkgs";

View File

@@ -57,17 +57,6 @@ in {
3389
3390
];
# users.users.andreas.extraGroups = [ "sambashare" ];
# Enable Avahi (mDNS/DNS-SD) for discovery
services.avahi = {
enable = true;
nssmdns4 = true;
openFirewall = true;
};
# Enable GNOME sharing services
services.gnome.gnome-user-share.enable = true;
environment.systemPackages = with pkgs; [
gnome-tweaks
gnome-software
@@ -96,16 +85,6 @@ in {
(lib.mkIf cfg.kde.enable {
services.xserver.enable = true;
services.desktopManager.plasma6.enable = true;
environment.sessionVariables = {
# Forces KWin to use the legacy DRM interface so "Allow Tearing" actually works
# KWIN_DRM_NO_AMS = "1";
# Disables the new triple buffering in Plasma 6.1+ to reduce latency
# KWIN_DRM_DISABLE_TRIPLE_BUFFERING = "1";
# KWIN_USE_HWCURSOR = "0";
# KWIN_DRM_USE_EGL_STREAMS = "0";
# MESA_VK_WSI_PRESENT_MODE = "immediate";
# vblank_mode = "0";
};
environment.systemPackages = with pkgs; [
kdePackages.qtwebsockets
kdePackages.qtwebchannel

View File

@@ -33,11 +33,11 @@
lutris
vkd3d
dxvk
corefonts
protontricks
mangohud
vkbasalt
gamescope
corefonts
];
hardware.uinput.enable = true;
@@ -52,15 +52,14 @@
"-r" "172"
"-e" # Enable steam integration
"--steam"
"--prefer-outpout DP-4"
"--prefer-vk-device 8086:e20b" # lspci -nn | grep VGA
];
env = {
# WLR_RENDERER = "vulkan";
# DXVK_HDR = "0 ";
# ENABLE_GAMESCOPE_WSI = "0";
# WINE_FULLSCREEN_FSR = "1";
# SDL_VIDEODRIVER = "wayland,x11"; # Games allegedly prefer X11
WLR_RENDERER = "vulkan";
DXVK_HDR = "0 ";
ENABLE_GAMESCOPE_WSI = "0";
WINE_FULLSCREEN_FSR = "1";
SDL_VIDEODRIVER = "wayland,x11"; # Games allegedly prefer X11
};
};
@@ -69,11 +68,10 @@
package = pkgs.steam.override {
extraPkgs = pkgs: with pkgs; [
gamemode
noto-fonts-color-emoji
];
extraEnv = {
# SDL_VIDEODRIVER = "wayland,x11";
# SDL_VIDEODRIVER = "x11,wayland";
SDL_VIDEODRIVER = "x11";
};
};
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play

View File

@@ -0,0 +1,28 @@
{ ... }:
final: prev:
let
python313ForCeph =
let
base = final.python313;
in
base
// {
override = args:
base.override (args // {
packageOverrides = self: super:
(if args ? packageOverrides then args.packageOverrides self super else { })
// {
# Ceph still references cython_0 in nixpkgs; map it to modern cython on py3.13.
cython_0 = super.cython;
};
});
};
in {
# Work around nixos-unstable eval failure:
# sphinx-9.1.0 not supported for interpreter python3.11
# (seen through libvirtd -> qemu_full -> ceph Python dependency chain).
ceph = prev.ceph.override {
python311 = python313ForCeph;
};
}

View File

@@ -0,0 +1,11 @@
{ ... }:
final: prev: {
mbedtls_2 = prev.mbedtls_2.overrideAttrs (oldAttrs: {
doCheck = false; # Skip failing PSA crypto tests
});
haxe = prev.haxe.overrideAttrs (oldAttrs: {
buildInputs = (oldAttrs.buildInputs or []) ++ [ final.mbedtls_2 ];
});
}

View File

@@ -1,38 +0,0 @@
{ ... }:
final: prev: {
mesa = (prev.mesa.overrideAttrs (old: rec {
version = "git-unstable-2026-05-07";
src = prev.fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "mesa";
repo = "mesa";
rev = "0f75fa5bfd29770128a412f1fcf5c4121f95e1bb";
hash = "sha256-9sqgro3Y+yctcueHEO0hNmySLNn9F1HP3lPqcIow0+k=";
};
patches = [];
buildInputs = old.buildInputs ++ (with prev.llvmPackages_21; [
clang-unwrapped
libclang
]);
# Create symlinks to clang libraries so meson can find them
preConfigure = (old.preConfigure or "") + ''
mkdir -p $NIX_BUILD_TOP/clang-libs
for lib in ${prev.llvmPackages_21.clang-unwrapped.lib}/lib/*.a; do
ln -sf "$lib" "$NIX_BUILD_TOP/clang-libs/"
done
export LIBRARY_PATH="$NIX_BUILD_TOP/clang-libs:''${LIBRARY_PATH:-}"
export CXXFLAGS="$CXXFLAGS -fno-strict-aliasing"
'';
mesonFlags =
(builtins.filter (flag:
!(prev.lib.hasPrefix "-Dclang-libdir=" flag) &&
flag != "--sysconfdir=/etc"
) old.mesonFlags) ++ [
"-Dsysconfdir=${placeholder "out"}/etc"
] ++ (if prev.stdenv.hostPlatform.is64bit then [ "-Dintel-rt=enabled" ] else [ "-Dintel-rt=disabled" ]);
}));
}

View File

@@ -1,7 +0,0 @@
{ ... }:
final: prev: {
openldap = prev.openldap.overrideAttrs {
doCheck = !prev.stdenv.hostPlatform.isi686;
};
}

View File

@@ -47,9 +47,9 @@
services = {
# Enable Gnome Session
displayManager.gdm.enable = false;
displayManager.sddm.enable = true;
displayManager.sddm.wayland.enable = true;
displayManager.gdm.enable = true;
displayManager.sddm.enable = false;
displayManager.sddm.wayland.enable = false;
displayManager.cosmic-greeter.enable = false;
displayManager.defaultSession = "gnome";
@@ -139,8 +139,7 @@
ntfs3g
htop
rivalcfg
blender
freecad
reaper
discord
betterdiscordctl
@@ -172,7 +171,9 @@
virtualisation.libvirtd = {
enable = true;
qemu = {
package = pkgs.qemu;
package = pkgs.qemu_full.override {
cephSupport = false;
};
runAsRoot = true;
swtpm.enable = true;
vhostUserPackages = [ pkgs.virtiofsd ];
@@ -195,14 +196,13 @@
# Enable the OpenSSH daemon.
services.openssh.enable = true;
# Open ports in the .
# Open ports in the firewall.
networking.firewall.allowedTCPPorts = [
24800 #Synergy
53317 #localsend
3390 #rdp
9090
8000
40122
];
networking.firewall.allowedUDPPorts = [
24800 #Synergy
@@ -210,7 +210,6 @@
3390 #rdp
9090
8000
40122
];
networking.firewall.trustedInterfaces = [ "virbr0" ];
networking.nat = {
@@ -234,28 +233,10 @@
}
];
};
services.mullvad-vpn.enable = true;
services.mullvad-vpn.package = pkgs.mullvad-vpn;
# Or disable the firewall altogether.
# networking.firewall.enable = false;
fonts = {
packages = with pkgs; [
noto-fonts
noto-fonts-color-emoji
];
fontconfig = {
enable = true;
defaultFonts = {
sansSerif = [ "DejaVu Sans" "Noto Color Emoji" ];
serif = [ "DejaVu Serif" "Noto Color Emoji" ];
monospace = [ "DejaVu Sans Mono" "Noto Color Emoji" ];
emoji = [ "Noto Color Emoji" ];
};
};
};
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave

View File

@@ -45,7 +45,6 @@ in
my-namespace.desktop-environment.xfce.enable = true;
my-namespace.desktop-environment.gnome.enable = true;
my-namespace.desktop-environment.kde.enable = true;
my-namespace.desktop-environment.hyprland.enable = true;
my-namespace.desktop-environment.cosmic.enable = true;
my-namespace.performance-tuning.enable = true;
my-namespace.file-organization.enable = true;
@@ -69,6 +68,7 @@ in
# Packages from inputsq
inputs.game-of-life.packages.x86_64-linux.default
inputs.zen-browser.packages.x86_64-linux.default
inputs.trilium-next-pr.legacyPackages.x86_64-linux.trilium-next-desktop
inputs.anikki.packages.x86_64-linux.default
# We want flatpak support
flatpak
@@ -99,20 +99,16 @@ in
# Open ports in the firewall.
networking.firewall.allowedTCPPorts = [
59010 #SoundWireServer
5001
11434
3389 #RDP
22 #ssh
];
networking.firewall.allowedUDPPorts = [
59010 #SoundWireServer
5001
11434
3389 #RDP
22 #ssh
];
# Or disable the firewall altogether.
networking.firewall.enable = false;
# networking.firewall.enable = false;
# Install firefox.

View File

@@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
{
# boot.kernelParams = [ "drm.edid_firmware=DP-1:edid/edid.bin,DP-2:edid/edid.bin,DP-3:edid/edid.bin,DP-4:edid/edid.bin" ];
boot.kernelParams = [
"drm.edid_firmware=DP-2:edid/edid.bin,DP-4:edid/edid.bin"
];
boot.kernelParams = [ "drm.edid_firmware=DP-2:edid/edid.bin" ];
hardware.firmware = [

View File

@@ -27,7 +27,7 @@
"module_blacklist=nouveau,nvidia,nvidia_drm,nvidia_modeset,nvidia_uvm"
];
services.switcherooControl.enable = true;
# environment.variables.VK_ICD_FILENAMES = "/run/opengl-driver/share/vulkan/icd.d/intel_icd.x86_64.json";
environment.variables.VK_ICD_FILENAMES = "/run/opengl-driver/share/vulkan/icd.d/intel_icd.x86_64.json";
hardware.intel-gpu-tools.enable = true;
hardware.graphics = {
enable = true;
@@ -53,13 +53,6 @@
"nvidia_uvm"
];
# Mark Arc B580 as a discrete Intel GPU for switcheroo-control and
# keep runtime PCI power management enabled for the device.
services.udev.extraRules = ''
ACTION=="add|bind", SUBSYSTEM=="pci", ATTR{vendor}=="0x8086", ATTR{device}=="0xe20b", TEST=="power/control", ATTR{power/control}="auto"
SUBSYSTEM=="drm", DRIVERS=="xe", ATTRS{vendor}=="0x8086", ATTRS{device}=="0xe20b", TAG+="switcheroo-discrete-gpu"
'';
environment.variables = {
# Force Intel GPU for all graphics operations
KWIN_DRM_DEVICES = "/dev/dri/card0";
@@ -127,7 +120,4 @@
clinfo
vulkan-tools
];
services.xserver.deviceSection = ''
Option "TearFree" "false"
'';
}

View File

@@ -17,23 +17,9 @@
boot.extraModprobeConfig = ''
options vfio-pci ids=10de:1b81,10de:10f0
'';
boot.initrd.systemd = {
enable = true;
services.initrd-vfio-pci-nvidia = {
description = "vfio-pci predevice init";
wantedBy = [ "initrd.target" ];
# Match 'preDeviceCommands' by running early
before = [ "sysroot.mount" ];
unitConfig.DefaultDependencies = "no";
serviceConfig.Type = "oneshot";
# Place your original shell commands here
script = ''
modprobe vfio-pci
'';
};
};
boot.initrd.preDeviceCommands = ''
modprobe vfio-pci
'';
# # EARLY and deterministic binding
# boot.initrd.preDeviceCommands = ''
# echo 0000:05:00.0 > /sys/bus/pci/drivers/vfio-pci/bind

View File

@@ -33,7 +33,7 @@
serviceConfig = {
Type = "oneshot";
ExecStart = "${pkgs.ethtool}/bin/ethtool --set-eee enp10s0 eee off";
ExecStart = "${pkgs.ethtool}/bin/ethtool --set-eee enp75s0 eee off";
RemainAfterExit = true;
};
};