Compare commits

..

No commits in common. "92a41608af43b528e056e29d5078168d23d4b910" and "66e7dab5aaca7f35405454765491e648b5053c71" have entirely different histories.

13 changed files with 88 additions and 223 deletions

View File

@ -50,11 +50,11 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1726952766,
"narHash": "sha256-w/1jB99f0eaQp5hVbJgkUl/PTrUN/XGxRVKBQZlZ43A=",
"lastModified": 1726248336,
"narHash": "sha256-e7gRQHB6dnvzjBZuAaWOO8adYZLodoxFir9YI0TyW6M=",
"owner": "chaotic-cx",
"repo": "nyx",
"rev": "a8b5d65ffe5c987dc7ab790588d011005e440d58",
"rev": "f43f7397b3eec7a047783d384afe1faddebb6761",
"type": "github"
},
"original": {
@ -136,11 +136,11 @@
]
},
"locked": {
"lastModified": 1726842196,
"narHash": "sha256-u9h03JQUuQJ607xmti9F9Eh6E96kKUAGP+aXWgwm70o=",
"lastModified": 1726325969,
"narHash": "sha256-Mlw7009cdFry9OHpS6jy294lXhb+gcRa0iS2hYhkC6s=",
"owner": "nix-community",
"repo": "disko",
"rev": "51994df8ba24d5db5459ccf17b6494643301ad28",
"rev": "3632080c41d7a657995807689a08ef6c4bcb2c72",
"type": "github"
},
"original": {
@ -158,11 +158,11 @@
"rust-analyzer-src": "rust-analyzer-src"
},
"locked": {
"lastModified": 1726900127,
"narHash": "sha256-v3r7yJY8YE4HAzD5DXOxLkzj8YZKQ0xuccp9yppGW1U=",
"lastModified": 1726036322,
"narHash": "sha256-9Hwl4lzB5yFah00OaXSMDPDubCy99wtLgsYxMVpMwlM=",
"owner": "nix-community",
"repo": "fenix",
"rev": "18eefba7fd0bf03e115785948758a44125a9fd68",
"rev": "3e50a3c915882f07cb3f6c246f09febc4ad36c3e",
"type": "github"
},
"original": {
@ -182,11 +182,11 @@
]
},
"locked": {
"lastModified": 1726960811,
"narHash": "sha256-dsXtISWmjHReplx9V18iCoEEKU9RcwmZJrIq0Jkzu3I=",
"lastModified": 1726362895,
"narHash": "sha256-I4fEe6Qx+BTcc202zAy0R07a02vTV328UQXOIWLUjwY=",
"owner": "nix-community",
"repo": "flake-firefox-nightly",
"rev": "e202a3f7dd9c9d1016e47124bea4f44e7a551284",
"rev": "e2196acad3e466b26cb1bb03b9c93513ee5397b8",
"type": "github"
},
"original": {
@ -298,11 +298,11 @@
"systems": "systems_3"
},
"locked": {
"lastModified": 1726560853,
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
@ -466,11 +466,11 @@
]
},
"locked": {
"lastModified": 1726902823,
"narHash": "sha256-Gkc7pwTVLKj4HSvRt8tXNvosl8RS9hrBAEhOjAE0Tt4=",
"lastModified": 1726036828,
"narHash": "sha256-ZQHbpyti0jcAKnwQY1lwmooecLmSG6wX1JakQ/eZNeM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "14929f7089268481d86b83ed31ffd88713dcd415",
"rev": "8a1671642826633586d12ac3158e463c7a50a112",
"type": "github"
},
"original": {
@ -486,11 +486,11 @@
]
},
"locked": {
"lastModified": 1726985855,
"narHash": "sha256-NJPGK030Y3qETpWBhj9oobDQRbXdXOPxtu+YgGvZ84o=",
"lastModified": 1726357542,
"narHash": "sha256-p4OrJL2weh0TRtaeu1fmNYP6+TOp/W2qdaIJxxQay4c=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "04213d1ce4221f5d9b40bcee30706ce9a91d148d",
"rev": "e524c57b1fa55d6ca9d8354c6ce1e538d2a1f47f",
"type": "github"
},
"original": {
@ -508,11 +508,11 @@
]
},
"locked": {
"lastModified": 1726902390,
"narHash": "sha256-ESAD6AkxsQdV/j5ZBcO4Vg94J7Xd0nfpiEZpJtwSEhg=",
"lastModified": 1726031155,
"narHash": "sha256-QUv5cxy40HRC7vJz9JjbVEmlHT+q1VIuikNJUQZHre0=",
"owner": "Jovian-Experiments",
"repo": "Jovian-NixOS",
"rev": "faf4c746c068dd8e41b1fa5f18beeabd34d4064c",
"rev": "90c68db7d9430bd30e8c5096a0e3dc078b410050",
"type": "github"
},
"original": {
@ -552,11 +552,11 @@
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1726600542,
"narHash": "sha256-4ZP8rYtad1Z0LY3vZ1eYSRUzqPd3x7K0j7SpP3vReWc=",
"lastModified": 1725797487,
"narHash": "sha256-1NqTS6PePeoLVH8UY6poIoxlNq1Hhgn7RZs+OT8b2wQ=",
"owner": "nix-community",
"repo": "lib-aggregate",
"rev": "e0cc0b05b0296fdc52fa683d47a3470dfe4f79ea",
"rev": "3c180ce6583583285ef1b105cbc1667ba00c3e8d",
"type": "github"
},
"original": {
@ -626,11 +626,11 @@
"rust-overlay": "rust-overlay_2"
},
"locked": {
"lastModified": 1726716330,
"narHash": "sha256-mIuOP4I51eFLquRaxMKx67pHmhatZrcVPjfHL98v/M8=",
"lastModified": 1723948777,
"narHash": "sha256-rX14joTzvRUiCfmCT0LUMV3Mxi79VJANcKB/kkh7Qys=",
"owner": "oxalica",
"repo": "nil",
"rev": "c8e8ce72442a164d89d3fdeaae0bcc405f8c015a",
"rev": "4f3081d1f10bb61f197b780e67f426e53f818691",
"type": "github"
},
"original": {
@ -664,11 +664,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1726905744,
"narHash": "sha256-xyNtG5C+xvfsnOVEamFe9zCCnuNwk93K/TlFC/4DmCI=",
"lastModified": 1725885300,
"narHash": "sha256-5RLEnou1/GJQl+Wd+Bxaj7QY7FFQ9wjnFq1VNEaxTmc=",
"owner": "nixos",
"repo": "nixos-hardware",
"rev": "b493dfd4a8cf9552932179e56ff3b5819a9b8381",
"rev": "166dee4f88a7e3ba1b7a243edb1aca822f00680e",
"type": "github"
},
"original": {
@ -679,11 +679,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1726755586,
"narHash": "sha256-PmUr/2GQGvFTIJ6/Tvsins7Q43KTMvMFhvG6oaYK+Wk=",
"lastModified": 1726062873,
"narHash": "sha256-IiA3jfbR7K/B5+9byVi9BZGWTD4VSbWe8VLpp9B/iYk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "c04d5652cfa9742b1d519688f65d1bbccea9eb7e",
"rev": "4f807e8940284ad7925ebd0a0993d2a1791acb2f",
"type": "github"
},
"original": {
@ -695,11 +695,11 @@
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1726362065,
"narHash": "sha256-4h15WKdrs9zf6DGaeeV7ntU/pHHGkH6geYt1QBW0CP4=",
"lastModified": 1725757153,
"narHash": "sha256-c1a6iLmCVPFI9EUVMrBN8xdmFxFXEjcVwiTSVmqajOs=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "9db4db09d82e4b2207bfa7f1e747a4f49d214555",
"rev": "68584f89dd0eb16fea5d80ae127f3f681f6a5df7",
"type": "github"
},
"original": {
@ -726,11 +726,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1726755586,
"narHash": "sha256-PmUr/2GQGvFTIJ6/Tvsins7Q43KTMvMFhvG6oaYK+Wk=",
"lastModified": 1726062873,
"narHash": "sha256-IiA3jfbR7K/B5+9byVi9BZGWTD4VSbWe8VLpp9B/iYk=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "c04d5652cfa9742b1d519688f65d1bbccea9eb7e",
"rev": "4f807e8940284ad7925ebd0a0993d2a1791acb2f",
"type": "github"
},
"original": {
@ -742,11 +742,11 @@
},
"nur": {
"locked": {
"lastModified": 1726995785,
"narHash": "sha256-qpY9TCjtyhAeHa64NCyo3SoaHslxrrxQiMOPPY5lXEM=",
"lastModified": 1726378554,
"narHash": "sha256-cv3I+OdFFVTA+ONaPsC299NJW4205cJKT5wjhYl0Dso=",
"owner": "nix-community",
"repo": "nur",
"rev": "474ea929fade537a0ba4f1e5b73abc0d157a293f",
"rev": "cab24868b269b3abf60dd3cc63c168c844bec778",
"type": "github"
},
"original": {
@ -804,11 +804,11 @@
"rust-analyzer-src": {
"flake": false,
"locked": {
"lastModified": 1726443025,
"narHash": "sha256-nCmG4NJpwI0IoIlYlwtDwVA49yuspA2E6OhfCOmiArQ=",
"lastModified": 1725985110,
"narHash": "sha256-0HKj+JI6rtxaE6Kzcd6HyFNbEFJRsLy5DoNgVF1pyRM=",
"owner": "rust-lang",
"repo": "rust-analyzer",
"rev": "94b526fc86eaa0e90fb4d54a5ba6313aa1e9b269",
"rev": "bcc708992104c2059f310fbc3ac00bfc377f9ea8",
"type": "github"
},
"original": {
@ -847,11 +847,11 @@
]
},
"locked": {
"lastModified": 1726453838,
"narHash": "sha256-pupsow4L79SBfNwT6vh/5RAbVZuhngIA0RTCZksXmZY=",
"lastModified": 1722824458,
"narHash": "sha256-2k3/geD5Yh8JT1nrGaRycje5kB0DkvQA/OUZoel1bIU=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "ca2e79cd22625d214b8437c2c4080ce79bd9f7d2",
"rev": "a8a937c304e62a5098c6276c9cdf65c19a43b1a5",
"type": "github"
},
"original": {
@ -910,11 +910,11 @@
]
},
"locked": {
"lastModified": 1726970904,
"narHash": "sha256-GVE2yM3Sn18qkUTZHZ8Hmwwm/YSu+oYp3LM106+10UU=",
"lastModified": 1726102228,
"narHash": "sha256-9WRTBxEq2P1lqFGXcVAlXx5Eh95rmvHM6/x13fVcUAY=",
"owner": "nix-community",
"repo": "srvos",
"rev": "c7ffab6f1dd5acb2a2528842678f61c7b1cebe59",
"rev": "b9fae7b4351851d050333df6cef1b02b01b2ca2d",
"type": "github"
},
"original": {
@ -1060,11 +1060,11 @@
},
"locked": {
"dir": "nix",
"lastModified": 1726976812,
"narHash": "sha256-7LHyNF/IATpeDg+fLH4LnwGbK3IymdNHTPRNLXnIoZs=",
"lastModified": 1726359931,
"narHash": "sha256-yGcSRN6T7YgRI2k0LpcKwuJQ+QO/YvzBVeUaWtlMN3U=",
"owner": "wez",
"repo": "wezterm",
"rev": "1c4fdd3f7131785d0afaed08bed6cf1856f84328",
"rev": "1eddc9157f51577d7984dd6aec3b780ecec1d4a0",
"type": "github"
},
"original": {

View File

@ -88,9 +88,6 @@
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
# NOTE: enable this to make hyprland work
# hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
lanzaboote.url = "github:nix-community/lanzaboote";
lanzaboote.inputs.nixpkgs.follows = "nixpkgs";

View File

@ -90,7 +90,7 @@
};
# Fonts - make web pages follow system font
"browser.display.use_document_fonts" = {
Value = 1;
Value = 0;
Status = "locked";
};
};
@ -189,6 +189,10 @@
"media.rdd-ffmpeg.enabled" = true;
"widget.dmabuf.force-enabled" = true;
"svg.context-properties.content.enabled" = true;
"gnomeTheme.hideSingleTab" = true;
"gnomeTheme.bookmarksToolbarUnderTabs" = true;
"gnomeTheme.normalWidthTabs" = false;
"gnomeTheme.tabsAsHeaderbar" = false;
};
};
};

View File

@ -4,7 +4,8 @@
lib,
pkgs,
...
}: {
}:
{
options.snowflake.desktop.wezterm.enable = lib.mkEnableOption "Enable wezterm home configuration";
config = lib.mkIf config.snowflake.desktop.wezterm.enable {
@ -36,8 +37,6 @@
color_scheme = "ayu",
use_fancy_tab_bar = false,
window_decorations = "NONE",
check_for_updates = false,
}
'';
};

View File

@ -42,7 +42,9 @@
initrd.verbose = false;
# Default to the latest kernel package.
kernelPackages = lib.mkDefault pkgs.linuxPackages_latest;
# Force performance policy for Active State Performance Management.
kernelParams = [
"pcie_aspm.policy=performance"
"nmi_watchdog=0"
];

View File

@ -67,14 +67,8 @@
warn-dirty = false;
# Add cache substituters to allow fetching cached builds.
trusted-substituters = [
"https://nix-community.cachix.org"
"https://hyprland.cachix.org"
];
trusted-public-keys = [
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
];
trusted-substituters = ["https://nix-community.cachix.org"];
trusted-public-keys = ["nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="];
};
};
};

View File

@ -4,10 +4,7 @@
pkgs,
...
}: {
options.snowflake.desktop = {
enable = lib.mkEnableOption "Enable core Desktop Environment configuration";
fingerprint.enable = lib.mkEnableOption "Enable fingerprint support for Desktop Environments";
};
options.snowflake.desktop.enable = lib.mkEnableOption "Enable core Desktop Environment configuration";
config = lib.mkIf config.snowflake.desktop.enable {
snowflake = {
@ -35,6 +32,7 @@
vaapiIntel
libvdpau-va-gl
vaapiVdpau
intel-ocl
intel-media-driver
];
};
@ -43,12 +41,6 @@
LIBVA_DRIVER_NAME = "iHD";
};
# Enable fingerprint authentication.
# Requires fingerprint registered using `fprint-enroll` to work.
services.fprintd.enable = true;
services.libinput.enable = true;
services.xserver.enable = true;
# Prevents xterm from being installed.
# Prefer installing a custom terminal emulator instead.
services.xserver.excludePackages = [pkgs.xterm];
@ -61,12 +53,6 @@
# Additional configuration will be done through individual
# desktop environment configurations.
xdg.portal.enable = true;
# Additional configuration for XDG Portal.
xdg.portal.wlr.enable = true;
xdg.portal.xdgOpenUsePortal = true;
# Add bibata cursors everywhere because it looks cool.
environment.systemPackages = [pkgs.bibata-cursors];
# Set environment variables for the system.
environment.variables = {

View File

@ -1,86 +0,0 @@
{
config,
lib,
pkgs,
...
}: {
options.snowflake.desktop.gnome = {
enable = lib.mkEnableOption "Enable the Gnome Desktop Environment";
};
config = lib.mkIf config.snowflake.desktop.gnome.enable {
services.xserver = {
displayManager.gdm = {
enable = true;
wayland = true;
};
desktopManager.gnome = {
enable = true;
extraGSettingsOverridePackages = [
pkgs.nautilus-open-any-terminal
];
};
};
services.udev.packages = [pkgs.gnome-settings-daemon];
# Remove bloatware that we do not require.
environment = {
gnome.excludePackages = with pkgs; [
atomix # puzzle game
cheese # webcam tool
epiphany # web browser
evince # document viewer
geary # email reader
gedit
gnome-characters
gnome-connections
gnome-console
gnome-contacts
gnome-font-viewer
gnome-initial-setup
gnome-maps
gnome-music
gnome-photos
gnome-shell-extensions
gnome-text-editor
gnome-tour
hitori # sudoku game
iagno # go game
snapshot
tali # poker game
totem # video player
yelp # Help view
];
systemPackages = with pkgs; [
ffmpegthumbnailer
adwaita-icon-theme
bibata-cursors
dconf-editor
gnome-tweaks
nautilus-python
nautilus-open-any-terminal
wl-clipboard
];
};
programs.dconf.profiles = {
gdm.databases = [
{
settings = {
"org/gnome/mutter".experimental-features = ["scale-monitor-framebuffer"];
"org/gnome/desktop/peripherals/mouse".accel-profile = "flat";
"org/gnome/desktop/peripherals/touchpad".tap-to-click = true;
};
}
];
};
snowflake.user.extraGroups = [
"audio"
"input"
"video"
];
};
}

View File

@ -1,39 +0,0 @@
{
config,
inputs,
lib,
pkgs,
...
}: {
options.snowflake.desktop.hyprland = {
enable = lib.mkEnableOption "Enable the Hyprland Desktop Environment";
};
config = lib.mkIf config.snowflake.desktop.hyprland.enable {
programs.hyprland = {
enable = true;
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
xwayland.enable = true;
};
programs.hyprlock.enable = true;
environment.sessionVariables.WLR_NO_HARDWARE_CURSORS = "1";
environment.systemPackages = with pkgs; [
bibata-cursors
mako
wofi
];
security.polkit.enable = true;
security.pam.services.hyprlock = {
fprintAuth = false;
};
snowflake.user.extraGroups = [
"audio"
"input"
"video"
];
};
}

View File

@ -10,12 +10,21 @@
config = lib.mkIf config.snowflake.desktop.kde.enable {
services = {
libinput.enable = true;
xserver = {
enable = true;
};
displayManager.sddm = {
enable = true;
wayland.enable = true;
wayland.compositor = "kwin";
};
desktopManager.plasma6.enable = true;
# Enable fingerprint authentication.
# Requires fingerprint registered using `fprint-enroll` to work.
fprintd.enable = true;
};
# Remove bloatware that we do not require.
@ -30,9 +39,12 @@
# SDDM does not work well with fingerprint authentication.
security.pam.services.login.fprintAuth = false;
# Additional configuration for XDG Portal.
xdg.portal.wlr.enable = true;
xdg.portal.xdgOpenUsePortal = true;
xdg.portal.extraPortals = with pkgs; [
xdg-desktop-portal-kde
xdg-desktop-portal-gtk
xdg-desktop-portal-kde
];
snowflake.user.extraGroups = [

View File

@ -2,7 +2,7 @@ _: _self: super: let
version = "0.29.4";
in {
netbird = super.netbird.override {
buildGo123Module = args:
buildGoModule = args:
super.buildGo123Module (
args
// {

View File

@ -25,8 +25,11 @@
fileSystems = ["/"];
};
services.system76-scheduler.enable = true;
services.system76-scheduler.settings.cfsProfiles.enable = true;
# Power management, enable powertop and thermald.
powerManagement.powertop.enable = true;
powerManagement.cpuFreqGovernor = lib.mkDefault "schedutil";
services.thermald.enable = true;
# TODO: remove, temporary for mongoDB build
@ -51,7 +54,6 @@
core.docker.storageDriver = "btrfs";
desktop.enable = true;
desktop.fingerprint.enable = true;
desktop.kde.enable = true;
gaming.steam.enable = true;

View File

@ -20,19 +20,13 @@
"iwlwifi"
"xe"
];
kernelPackages = lib.mkForce pkgs.linuxPackages_testing;
kernelPackages = lib.mkDefault pkgs.linuxPackages_testing;
kernelParams = [
# NixOS produces many wakeups per second, which is bad for battery life.
# This disables the timer tick on the last 7 cores.
"nohz_full=14-21"
"i915.force_probe=!7d55"
"xe.force_probe=7d55"
"initcall_blacklist=simpledrm_platform_driver_init"
# This solves an issue with resume after suspend where the SSD goes into
# a read-only state. We trust some random, obscure Arch wiki article over
# actually trying to figure out why it might be so.
# ref: https://wiki.archlinux.org/title/Solid_state_drive/NVMe#Controller_failure_due_to_broken_suspend_support
"iommu=soft"
# "resume_offset=2465529"
];
# resumeDevice = "/dev/disk/by-uuid/870fde90-a91a-4554-8b1c-d5702c789f4d";