Compare commits
11 Commits
Author | SHA1 | Date | |
---|---|---|---|
200a479c76 | |||
17168ca309 | |||
b42c0d9988 | |||
1d20ef52a8 | |||
223545ba1d | |||
7a992161a0 | |||
f47ab5481a | |||
58b5e233b9 | |||
c770b16254 | |||
72cd5d5353 | |||
1ce7875398 |
@ -13,7 +13,7 @@ rec {
|
||||
pictures = "${dir.home}/Pictures";
|
||||
};
|
||||
|
||||
hostname = "nixos";
|
||||
hostname = "thinkpad";
|
||||
|
||||
keymaps = {
|
||||
layout = "gb,no";
|
||||
@ -21,8 +21,7 @@ rec {
|
||||
};
|
||||
|
||||
# Empty matches all
|
||||
monitor1 = "DP-1";
|
||||
monitor2 = "DP-3";
|
||||
monitor1 = "";
|
||||
|
||||
username = "martin";
|
||||
|
||||
|
@ -38,6 +38,7 @@ in
|
||||
# List packages installed in system profile. To search, run:
|
||||
# $ nix search wget
|
||||
environment.systemPackages = with pkgs; [
|
||||
brightnessctl
|
||||
wget
|
||||
xdg-utils
|
||||
xdg-desktop-portal
|
||||
|
196
flake.lock
generated
196
flake.lock
generated
@ -49,11 +49,11 @@
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739283129,
|
||||
"narHash": "sha256-GXJllf1wY7tOF6uei9S3PnSEghFbnJP1vkxM0kkMOoI=",
|
||||
"lastModified": 1739934729,
|
||||
"narHash": "sha256-PcrLk10meIJICzUJqtCMOJxoITzbH52fZg2XAB7SSsM=",
|
||||
"owner": "catppuccin",
|
||||
"repo": "nix",
|
||||
"rev": "d4e258e29075a86a82dacaf4f5e0985935ae4658",
|
||||
"rev": "b1ff2a638afa827f1473498190a2c1cae1cf41cf",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -62,41 +62,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"devshell": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1735644329,
|
||||
"narHash": "sha256-tO3HrHriyLvipc4xr+Ewtdlo7wM1OjXNjlWRgmM7peY=",
|
||||
"owner": "numtide",
|
||||
"repo": "devshell",
|
||||
"rev": "f7795ede5b02664b57035b3b757876703e2c3eac",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "devshell",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"locked": {
|
||||
"lastModified": 1733328505,
|
||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||
"revCount": 69,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
@ -136,54 +101,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"git-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"nixvim",
|
||||
"flake-compat"
|
||||
],
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1737465171,
|
||||
"narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"git-hooks",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709087332,
|
||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@ -191,11 +108,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739570999,
|
||||
"narHash": "sha256-eCc0/Q4bPpe4/AS+uzIrHLJcR6BxPQ69q2kD0/Qe6rU=",
|
||||
"lastModified": 1739757849,
|
||||
"narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "254d47082e23dbf72fdeca1da6fe1da420f478d8",
|
||||
"rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -205,27 +122,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738878603,
|
||||
"narHash": "sha256-fmhq8B3MvQLawLbMO+LWLcdC2ftLMmwSk+P29icJ3tE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "433799271274c9f2ab520a49527ebfe2992dcfbd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprpanel": {
|
||||
"inputs": {
|
||||
"ags": "ags",
|
||||
@ -234,11 +130,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739606511,
|
||||
"narHash": "sha256-ywkv5Pm6p4Taavp3yX9SjoLVf/mIHS3fRXSHjXqaJHQ=",
|
||||
"lastModified": 1740863579,
|
||||
"narHash": "sha256-U4amsszfgPUTAa9FrIlYsCCpmAyko22h/nbjhmAZvAs=",
|
||||
"owner": "Jas-SinghFSU",
|
||||
"repo": "HyprPanel",
|
||||
"rev": "c309a73d2d9821c90864447058b627c02bd82165",
|
||||
"rev": "2be9f1ef6c2df2ecf0eebe5a039e8029d8d151cd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -275,27 +171,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-darwin": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738743987,
|
||||
"narHash": "sha256-O3bnAfsObto6l2tQOmQlrO6Z2kD6yKwOWfs7pA0CpOc=",
|
||||
"owner": "lnl7",
|
||||
"repo": "nix-darwin",
|
||||
"rev": "ae406c04577ff9a64087018c79b4fdc02468c87c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "lnl7",
|
||||
"repo": "nix-darwin",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1736012469,
|
||||
@ -314,11 +189,11 @@
|
||||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1740560979,
|
||||
"narHash": "sha256-Vr3Qi346M+8CjedtbyUevIGDZW8LcA1fTG0ugPY/Hic=",
|
||||
"lastModified": 1741010256,
|
||||
"narHash": "sha256-WZNlK/KX7Sni0RyqLSqLPbK8k08Kq7H7RijPJbq9KHM=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "5135c59491985879812717f4c9fea69604e7f26f",
|
||||
"rev": "ba487dbc9d04e0634c64e3b1f0d25839a0a68246",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -330,11 +205,11 @@
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1739357830,
|
||||
"narHash": "sha256-9xim3nJJUFbVbJCz48UP4fGRStVW5nv4VdbimbKxJ3I=",
|
||||
"lastModified": 1741048562,
|
||||
"narHash": "sha256-W4YZ3fvWZiFYYyd900kh8P8wU6DHSiwaH0j4+fai1Sk=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "0ff09db9d034a04acd4e8908820ba0b410d7a33a",
|
||||
"rev": "6af28b834daca767a7ef99f8a7defa957d0ade6f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -362,24 +237,18 @@
|
||||
},
|
||||
"nixvim": {
|
||||
"inputs": {
|
||||
"devshell": "devshell",
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-parts": "flake-parts",
|
||||
"git-hooks": "git-hooks",
|
||||
"home-manager": "home-manager_2",
|
||||
"nix-darwin": "nix-darwin",
|
||||
"nixpkgs": [
|
||||
"nixpkgs-unstable"
|
||||
],
|
||||
"nuschtosSearch": "nuschtosSearch",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
"nuschtosSearch": "nuschtosSearch"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739527837,
|
||||
"narHash": "sha256-dsb5iSthp5zCWhdV0aXPunFSCkS0pCvRXMMgTEFjzew=",
|
||||
"lastModified": 1741098523,
|
||||
"narHash": "sha256-gXDSXDr6tAb+JgxGMvcEjKC9YO8tVOd8hMMZHJLyQ6Q=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "a39e0a651657046f3b936d842147fa51523b6818",
|
||||
"rev": "03065fd4708bfdf47dd541d655392a60daa25ded",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -431,11 +300,11 @@
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739223162,
|
||||
"narHash": "sha256-YrbYTM0CkZQG38Ysr2gF4BYdsQDNQtQ4YdQTDgw/zWM=",
|
||||
"lastModified": 1740889006,
|
||||
"narHash": "sha256-A1iyKVvZrLdLwqWPC9OvPjC85ADQn2R1EGfCzJBl+wI=",
|
||||
"owner": "Gerg-L",
|
||||
"repo": "spicetify-nix",
|
||||
"rev": "dea717737d04a2a3e877c082bfd2c7f91c1a33ff",
|
||||
"rev": "f8d3757d4ae3af2175a631fb9598a42d30ee75fc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -474,27 +343,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738680491,
|
||||
"narHash": "sha256-8X7tR3kFGkE7WEF5EXVkt4apgaN85oHZdoTGutCFs6I=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "64dbb922d51a42c0ced6a7668ca008dded61c483",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"zen-browser": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
|
@ -42,12 +42,14 @@
|
||||
common = import ./common.nix;
|
||||
in
|
||||
{
|
||||
defaultPackage.${system} = home-manager.defaultPackage.${system};
|
||||
defaultPackages.${system} = home-manager.defaultPackage.${system};
|
||||
|
||||
# The minimum amount of dependencies in order to run 'just switch-now'
|
||||
devShells.${system}.default = pkgs.mkShell {
|
||||
packages = with pkgs; [
|
||||
just
|
||||
git
|
||||
git-crypt
|
||||
nh
|
||||
];
|
||||
};
|
||||
|
@ -21,7 +21,7 @@
|
||||
|
||||
signing = {
|
||||
signByDefault = true;
|
||||
key = "706F53DD087A91DE";
|
||||
key = "848D71DE0590C199";
|
||||
};
|
||||
|
||||
extraConfig = {
|
||||
|
@ -31,7 +31,7 @@
|
||||
base_keymap = "JetBrains";
|
||||
buffer_font_family = font;
|
||||
features = {
|
||||
inline_completion_provider = "zed";
|
||||
edit_completion_provider = "zed";
|
||||
};
|
||||
icon_theme = "Catppuccin Mocha";
|
||||
# icon_theme = { TODO replace icon theme above with below
|
||||
|
@ -45,6 +45,7 @@ in
|
||||
"network"
|
||||
"systray"
|
||||
"clock"
|
||||
"battery"
|
||||
"notifications"
|
||||
];
|
||||
};
|
||||
|
@ -1,5 +1,6 @@
|
||||
# Wallpapers
|
||||
{ pkgs, ... }:
|
||||
|
||||
let
|
||||
common = import ../../common.nix;
|
||||
in
|
||||
@ -14,7 +15,6 @@ in
|
||||
let
|
||||
wallpaperDir = ../../wallpapers;
|
||||
monitor1 = "${wallpaperDir}/nixos_waves.png";
|
||||
monitor2 = "${wallpaperDir}/ekg_v2.png";
|
||||
in
|
||||
{
|
||||
ipc = "on";
|
||||
@ -23,12 +23,10 @@ in
|
||||
|
||||
preload = [
|
||||
monitor1
|
||||
monitor2
|
||||
];
|
||||
|
||||
wallpaper = [
|
||||
"${common.monitor1},${monitor1}"
|
||||
"${common.monitor2},${monitor2}"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
@ -7,8 +7,7 @@ in
|
||||
{
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
monitor = [
|
||||
"${common.monitor1}, 3440x1440@175, 0x0, 1"
|
||||
"${common.monitor2}, 3840x2160@60, 3440x0, 1.5, transform, 1"
|
||||
"${common.monitor1}, 1920x1080@60.05, 0x0, 1"
|
||||
];
|
||||
|
||||
# Autostart
|
||||
@ -16,6 +15,7 @@ in
|
||||
app.browser
|
||||
app.terminal
|
||||
"systemctl --user start hyprpolkitagent"
|
||||
"hyprsunset -t 5000" # Set blue light filter
|
||||
];
|
||||
|
||||
env = [
|
||||
@ -105,11 +105,16 @@ in
|
||||
kb_layout = common.keymaps.layout;
|
||||
kb_options = common.keymaps.options;
|
||||
follow_mouse = 1;
|
||||
sensitivity = 0; # -1.0 - 1.0, 0 means no modification.
|
||||
touchpad.natural_scroll = false;
|
||||
sensitivity = 0.4; # -1.0 - 1.0, 0 means no modification.
|
||||
touchpad.natural_scroll = true;
|
||||
};
|
||||
|
||||
gestures.workspace_swipe = false;
|
||||
gestures = {
|
||||
workspace_swipe = true;
|
||||
workspace_swipe_distance = 150;
|
||||
workspace_swipe_min_speed_to_force = 0;
|
||||
workspace_swipe_cancel_ratio = 0.5;
|
||||
};
|
||||
|
||||
device = {
|
||||
name = "logitech-g502-hero-gaming-mouse";
|
||||
|
@ -15,19 +15,19 @@
|
||||
"custom/notification",
|
||||
"tray",
|
||||
"custom/lock",
|
||||
"custom/power"
|
||||
"custom/power",
|
||||
],
|
||||
"hyprland/workspaces": {
|
||||
"disable-scroll": false,
|
||||
"sort-by-name": true,
|
||||
"format": " {id} "
|
||||
"format": " {id} ",
|
||||
},
|
||||
"hyprland/window": {
|
||||
"format": "{initialTitle}"
|
||||
"format": "{initialTitle}",
|
||||
},
|
||||
"tray": {
|
||||
"icon-size": 21,
|
||||
"spacing": 10
|
||||
"spacing": 10,
|
||||
},
|
||||
// TODO better music module
|
||||
"custom/music": {
|
||||
@ -37,7 +37,7 @@
|
||||
"tooltip": false,
|
||||
"exec": "playerctl metadata --format='{{ title }}'",
|
||||
"on-click": "playerctl play-pause",
|
||||
"max-length": 50
|
||||
"max-length": 50,
|
||||
},
|
||||
"clock": {
|
||||
"timezone": "Europe/Oslo",
|
||||
@ -51,39 +51,39 @@
|
||||
"days": "<span color='#ecc6d9'><b>{}</b></span>",
|
||||
"weeks": "<span color='#99ffdd'><b>W{}</b></span>",
|
||||
"weekdays": "<span color='#ffcc66'><b>{}</b></span>",
|
||||
"today": "<span color='#ff6699'><b><u>{}</u></b></span>"
|
||||
}
|
||||
}
|
||||
"today": "<span color='#ff6699'><b><u>{}</u></b></span>",
|
||||
},
|
||||
},
|
||||
},
|
||||
"backlight": {
|
||||
"device": "intel_backlight",
|
||||
"format": "{icon}",
|
||||
"format-icons": ["", "", "", "", "", "", "", "", ""]
|
||||
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
||||
},
|
||||
"wireplumber": {
|
||||
// "scroll-step": 1, // %, can be a float
|
||||
"format": "{icon} {volume}%",
|
||||
"format-muted": " ",
|
||||
"format-icons": {
|
||||
"default": ["", " ", " "]
|
||||
"default": ["", " ", " "],
|
||||
},
|
||||
"on-click": "pavucontrol"
|
||||
"on-click": "pavucontrol",
|
||||
},
|
||||
"hyprland/language": {
|
||||
"format-en": "EN",
|
||||
"format-no": "NO",
|
||||
"keyboard-name": "logitech-logitech-g710-keyboard",
|
||||
"on-click": "hyprctl switchxkblayout logitech-logitech-g710-keyboard next"
|
||||
"on-click": "hyprctl switchxkblayout logitech-logitech-g710-keyboard next",
|
||||
},
|
||||
"custom/lock": {
|
||||
"tooltip": false,
|
||||
"on-click": "sh -c '(sleep 0.5s; hyprlock)'",
|
||||
"format": ""
|
||||
"format": "",
|
||||
},
|
||||
"custom/power": {
|
||||
"tooltip": false,
|
||||
"on-click": "wlogout &",
|
||||
"format": " "
|
||||
"format": " ",
|
||||
},
|
||||
"custom/notification": {
|
||||
"tooltip": false,
|
||||
@ -96,13 +96,13 @@
|
||||
"inhibited-notification": "<span foreground='#f38ba8'><sup></sup></span>",
|
||||
"inhibited-none": "",
|
||||
"dnd-inhibited-notification": "<span foreground='#f38ba8'><sup></sup></span>",
|
||||
"dnd-inhibited-none": ""
|
||||
"dnd-inhibited-none": "",
|
||||
},
|
||||
"return-type": "json",
|
||||
"exec-if": "which swaync-client",
|
||||
"exec": "swaync-client -swb",
|
||||
"on-click": "swaync-client -t -sw",
|
||||
"on-click-right": "swaync-client -d -sw",
|
||||
"escape": true
|
||||
}
|
||||
"escape": true,
|
||||
},
|
||||
}
|
||||
|
Binary file not shown.
@ -3,7 +3,7 @@
|
||||
{
|
||||
# TODO programatically get default name
|
||||
home = {
|
||||
file.".zen/audtxq7n.default/chrome" = {
|
||||
file.".zen/xdaxqlov.default/chrome" = {
|
||||
source = ./chrome;
|
||||
recursive = true;
|
||||
};
|
||||
|
6
modules/battery.nix
Normal file
6
modules/battery.nix
Normal file
@ -0,0 +1,6 @@
|
||||
{
|
||||
services = {
|
||||
upower.enable = true;
|
||||
power-profiles-daemon.enable = true;
|
||||
};
|
||||
}
|
14
modules/bluetooth.nix
Normal file
14
modules/bluetooth.nix
Normal file
@ -0,0 +1,14 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages = [
|
||||
pkgs.bluez
|
||||
];
|
||||
|
||||
hardware.bluetooth = {
|
||||
enable = true;
|
||||
powerOnBoot = true; # powers up the default Bluetooth controller on boot
|
||||
};
|
||||
|
||||
services.blueman.enable = true;
|
||||
}
|
@ -1,5 +1,7 @@
|
||||
{
|
||||
imports = [
|
||||
./battery.nix
|
||||
./bluetooth.nix
|
||||
./development.nix
|
||||
./fonts.nix
|
||||
./gaming
|
||||
|
@ -37,6 +37,5 @@
|
||||
|
||||
services.ollama = {
|
||||
enable = true;
|
||||
acceleration = "cuda";
|
||||
};
|
||||
}
|
||||
|
@ -1,7 +1,5 @@
|
||||
{
|
||||
imports = [
|
||||
./nvidia.nix
|
||||
];
|
||||
imports = [ ];
|
||||
|
||||
# Enable OpenGL
|
||||
hardware.graphics.enable = true;
|
||||
|
@ -1,28 +0,0 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
boot.kernelParams = [ "nvidia.NVreg_PreserveVideoMemoryAllocations=1" ];
|
||||
|
||||
# For hardware acceleration
|
||||
environment.sessionVariables.LIBVA_DRIVER_NAME = "nvidia";
|
||||
|
||||
hardware = {
|
||||
graphics.extraPackages = with pkgs; [
|
||||
# Used for hardware-acceleration
|
||||
nvidia-vaapi-driver
|
||||
];
|
||||
nvidia = {
|
||||
# Required
|
||||
modesetting.enable = true;
|
||||
# Use closed-source drivers
|
||||
open = false;
|
||||
# Enable the Nvidia settings menu
|
||||
nvidiaSettings = true;
|
||||
# Enable nvidia-suspend.service, nvidia-hibernate.service and nvidia-resume.service
|
||||
powerManagement.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
# Load Nvidia driver for Xorg and Wayland
|
||||
services.xserver.videoDrivers = [ "nvidia" ];
|
||||
}
|
@ -15,26 +15,26 @@
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [
|
||||
"xhci_pci"
|
||||
"ahci"
|
||||
"nvme"
|
||||
"xhci_pci"
|
||||
"usb_storage"
|
||||
"usbhid"
|
||||
"sd_mod"
|
||||
"sr_mod"
|
||||
"sdhci_pci"
|
||||
];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/5e3f0f97-4bb4-4a53-ace2-9ed19ff9e8ea";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=@" ];
|
||||
device = "/dev/disk/by-uuid/5ac9c425-35ae-47d5-a683-68ee0dbfc2bc";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
boot.initrd.luks.devices."luks-99b73f22-3fa1-42b5-ad48-54b0ccff72cc".device =
|
||||
"/dev/disk/by-uuid/99b73f22-3fa1-42b5-ad48-54b0ccff72cc";
|
||||
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/D188-48A9";
|
||||
device = "/dev/disk/by-uuid/3CFB-D12A";
|
||||
fsType = "vfat";
|
||||
options = [
|
||||
"fmask=0077"
|
||||
@ -49,10 +49,9 @@
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.eno1.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp0s20f0u8.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp6s0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp2s0f0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
xdg-desktop-portal-hyprland
|
||||
hyprpolkitagent # Auth deamon providing modals for password auth
|
||||
hyprshot # Screenshots
|
||||
hyprsunset # Blue light filter
|
||||
unstable.hyprsysteminfo
|
||||
unstable.hyprland-qtutils
|
||||
unstable.hyprland-qt-support
|
||||
|
@ -11,7 +11,27 @@
|
||||
security = {
|
||||
pam = {
|
||||
services = {
|
||||
login.u2fAuth = false; # U2F and password
|
||||
gdm-fingerprint.text = ''
|
||||
auth required pam_shells.so
|
||||
auth requisite pam_nologin.so
|
||||
auth requisite pam_faillock.so preauth
|
||||
auth required ${pkgs.fprintd}/lib/security/pam_fprintd.so
|
||||
auth optional pam_permit.so
|
||||
auth required pam_env.so
|
||||
auth [success=ok default=1] ${pkgs.gdm}/lib/security/pam_gdm.so
|
||||
auth optional ${pkgs.gnome-keyring}/lib/security/pam_gnome_keyring.so
|
||||
|
||||
account include login
|
||||
|
||||
password required pam_deny.so
|
||||
|
||||
session include login
|
||||
session optional ${pkgs.gnome-keyring}/lib/security/pam_gnome_keyring.so auto_start
|
||||
'';
|
||||
login = {
|
||||
fprintAuth = false;
|
||||
u2fAuth = false; # U2F and password
|
||||
};
|
||||
sudo.u2fAuth = true; # U2F or password
|
||||
};
|
||||
u2f = {
|
||||
@ -24,6 +44,23 @@
|
||||
};
|
||||
};
|
||||
|
||||
# Start the driver at boot
|
||||
systemd.services.fprintd = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig.Type = "simple";
|
||||
};
|
||||
|
||||
# Install the driver
|
||||
services.fprintd = {
|
||||
enable = true;
|
||||
tod.driver = pkgs.libfprint-2-tod1-goodix-550a; # Goodix 550a driver (from Lenovo)
|
||||
};
|
||||
|
||||
# however for focaltech 2808:a658, use fprintd with overidden package (without tod)
|
||||
# services.fprintd.package = pkgs.fprintd.override {
|
||||
# libfprint = pkgs.libfprint-focaltech-2808-a658;
|
||||
# };
|
||||
|
||||
services = {
|
||||
pcscd.enable = true; # Required for Yubikey
|
||||
udev.packages = with pkgs; [ yubikey-personalization ];
|
||||
|
Loading…
x
Reference in New Issue
Block a user