Use niri instead of GNOME
This commit is contained in:
parent
1e1285d62b
commit
1c116fe0a3
6 changed files with 91 additions and 247 deletions
|
@ -15,32 +15,6 @@ in
|
|||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [ gnome-ssh-askpass4 ];
|
||||
|
||||
# Excluding some GNOME applications from the default install
|
||||
environment.gnome.excludePackages = (
|
||||
with pkgs;
|
||||
[
|
||||
atomix # puzzle game
|
||||
baobab # disk usage analyzer
|
||||
cheese # webcam tool
|
||||
epiphany # web browser
|
||||
geary # email reader
|
||||
gnome-clocks
|
||||
gnome-connections
|
||||
gnome-disk-utility
|
||||
gnome-logs
|
||||
gnome-music
|
||||
gnome-photos
|
||||
gnome-terminal
|
||||
gnome-tour
|
||||
snapshot
|
||||
hitori # sudoku game
|
||||
iagno # go game
|
||||
simple-scan
|
||||
tali # poker game
|
||||
yelp # help viewer
|
||||
]
|
||||
);
|
||||
|
||||
fonts = {
|
||||
fontDir.enable = true;
|
||||
fontconfig = {
|
||||
|
@ -76,21 +50,8 @@ in
|
|||
localNetworkGameTransfers.openFirewall = true;
|
||||
};
|
||||
|
||||
services.gnome.gnome-keyring.enable = true;
|
||||
|
||||
services.printing.enable = true;
|
||||
|
||||
services.displayManager.defaultSession = "gnome";
|
||||
|
||||
services.xserver = {
|
||||
enable = true;
|
||||
displayManager.gdm.enable = true;
|
||||
displayManager.gdm.autoSuspend = false;
|
||||
desktopManager.gnome.enable = true;
|
||||
xkb.layout = "se";
|
||||
xkb.variant = "us";
|
||||
};
|
||||
|
||||
services.pulseaudio.enable = false;
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
|
|
|
@ -12,8 +12,6 @@ in
|
|||
options.patagia.laptop.enable = mkEnableOption "Laptop tools and configuration";
|
||||
|
||||
config = mkIf config.patagia.laptop.enable {
|
||||
environment.systemPackages = with pkgs; [ gnomeExtensions.battery-health-charging ];
|
||||
|
||||
services.fprintd.enable = true;
|
||||
};
|
||||
}
|
||||
|
|
52
flake.lock
generated
52
flake.lock
generated
|
@ -148,11 +148,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745810134,
|
||||
"narHash": "sha256-WfnYH/i7DFzn4SESQfWviXiNUZjohZhzODqLwKYHIPI=",
|
||||
"lastModified": 1746040799,
|
||||
"narHash": "sha256-osgPX/SzIpkR50vev/rqoTEAVkEcOWXoQXmbzsaI4KU=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "be7cf1709b469a2a2c62169172a167d1fed3509f",
|
||||
"rev": "5f217e5a319f6c186283b530f8c975e66c028433",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -172,11 +172,11 @@
|
|||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745798752,
|
||||
"narHash": "sha256-0jiImtQNvlDqf0eWqWFGugNjhazNmaXMi2fM7/B/cd8=",
|
||||
"lastModified": 1745993004,
|
||||
"narHash": "sha256-Tz/mPxMwAMghdi3nYnppkl6j3H3LdcdbuvmJyQj11JU=",
|
||||
"owner": "nix-community",
|
||||
"repo": "neovim-nightly-overlay",
|
||||
"rev": "31a7206bdf9e0c01db2165e20a6082690c60b9c9",
|
||||
"rev": "5cde8950cf2fa3ef8edf9b0af0e0a020a5318565",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -188,11 +188,11 @@
|
|||
"neovim-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1745795730,
|
||||
"narHash": "sha256-7sPk1jScMqsTwXYYFKYILrE9xLk7CK+yCBqcK46HTv8=",
|
||||
"lastModified": 1745965750,
|
||||
"narHash": "sha256-GtRcW1p7hzFu7AK1JXJGY6bG/5Y7vb+1VX8uFGKdefM=",
|
||||
"owner": "neovim",
|
||||
"repo": "neovim",
|
||||
"rev": "ce097c5091eab3550e1534fd111752577b5813ea",
|
||||
"rev": "0ab0cdb2dabc551f836851aa85d06e927c42d92a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -208,11 +208,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745725746,
|
||||
"lastModified": 1746054057,
|
||||
"narHash": "sha256-iR+idGZJ191cY6NBXyVjh9QH8GVWTkvZw/w+1Igy45A=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-index-database",
|
||||
"rev": "187524713d0d9b2d2c6f688b81835114d4c2a7c6",
|
||||
"rev": "13ba07d54c6ccc5af30a501df669bf3fe3dd4db8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -223,11 +223,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1745377448,
|
||||
"narHash": "sha256-jhZDfXVKdD7TSEGgzFJQvEEZ2K65UMiqW5YJ2aIqxMA=",
|
||||
"lastModified": 1745900683,
|
||||
"narHash": "sha256-ZGi2gjgPtmPmplCVz7dNufqkBr00g6EeAloX3GrFQls=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "507b63021ada5fee621b6ca371c4fca9ca46f52c",
|
||||
"rev": "ffa0bb043c25cfc79ff3bc20ba2e44c3724499b1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -239,11 +239,11 @@
|
|||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1745742390,
|
||||
"narHash": "sha256-1rqa/XPSJqJg21BKWjzJZC7yU0l/YTVtjRi0RJmipus=",
|
||||
"lastModified": 1745921652,
|
||||
"narHash": "sha256-hEAvEN+y/OQ7wA7+u3bFJwXSe8yoSf2QaOMH3hyTJTQ=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "26245db0cb552047418cfcef9a25da91b222d6c7",
|
||||
"rev": "b000159bba69b0106a42f65e52dbf27f77aca9d3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -255,11 +255,11 @@
|
|||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1745377448,
|
||||
"narHash": "sha256-jhZDfXVKdD7TSEGgzFJQvEEZ2K65UMiqW5YJ2aIqxMA=",
|
||||
"lastModified": 1746029695,
|
||||
"narHash": "sha256-ucaEphdH+3ANIprXcYiGoXfHGQol3c5G5f99R7RBU58=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "507b63021ada5fee621b6ca371c4fca9ca46f52c",
|
||||
"rev": "70b191e2e0b1b5fe8586ad939dfa01f3047865f7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -271,11 +271,11 @@
|
|||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1745526057,
|
||||
"narHash": "sha256-ITSpPDwvLBZBnPRS2bUcHY3gZSwis/uTe255QgMtTLA=",
|
||||
"lastModified": 1745930157,
|
||||
"narHash": "sha256-y3h3NLnzRSiUkYpnfvnS669zWZLoqqI6NprtLQ+5dck=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "f771eb401a46846c1aebd20552521b233dd7e18b",
|
||||
"rev": "46e634be05ce9dc6d4db8e664515ba10b78151ae",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -303,11 +303,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745780832,
|
||||
"narHash": "sha256-jGzkZoJWx+nJnPe0Z2xQBUOqMKuR1slVFQrMjFTKgeM=",
|
||||
"lastModified": 1745929750,
|
||||
"narHash": "sha256-k5ELLpTwRP/OElcLpNaFWLNf8GRDq4/eHBmFy06gGko=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "b2b6c027d708fbf4b01c9c11f6e80f2800b5a624",
|
||||
"rev": "82bf32e541b30080d94e46af13d46da0708609ea",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
./devel.nix
|
||||
./fish.nix
|
||||
./ghostty.nix
|
||||
./gnome.nix
|
||||
./k8s.nix
|
||||
./niri.nix
|
||||
./nix.nix
|
||||
./nvim
|
||||
./scripts.nix
|
||||
|
|
|
@ -1,179 +0,0 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
with lib.hm.gvariant;
|
||||
{
|
||||
config = lib.mkIf config.patagia.desktop.enable {
|
||||
home.packages = with pkgs; [
|
||||
gnome-contacts
|
||||
gnome-shell-extensions
|
||||
gnome-tweaks
|
||||
gnome-pomodoro
|
||||
gnomeExtensions.desktop-clock
|
||||
gnomeExtensions.emoji-copy
|
||||
gnomeExtensions.just-perfection
|
||||
gnomeExtensions.night-light-slider
|
||||
];
|
||||
|
||||
dconf.settings = {
|
||||
"org/gnome/desktop/wm/keybindings" = {
|
||||
close = [ "<Super>q" ];
|
||||
toggle-on-all-workspaces = [ "<Super>s" ];
|
||||
toggle-maximized = [ "<Super>m" ];
|
||||
maximize-vertically = [ "<Super>Up" ];
|
||||
minimize = [ "<Super>comma" ];
|
||||
move-to-center = [ "<Super>c" ];
|
||||
switch-applications = [ "<Super>Tab" ];
|
||||
switch-group = [ "<Super>Above_Tab" ];
|
||||
switch-windows = [ "<Alt>Tab" ];
|
||||
move-to-workspace-1 = [ "<Shift>F1" ];
|
||||
move-to-workspace-2 = [ "<Shift>F2" ];
|
||||
move-to-workspace-3 = [ "<Shift>F3" ];
|
||||
move-to-workspace-4 = [ "<Shift>F4" ];
|
||||
move-to-workspace-5 = [ "<Shift>F5" ];
|
||||
move-to-workspace-6 = [ "<Shift>F6" ];
|
||||
move-to-workspace-7 = [ "<Shift>F7" ];
|
||||
move-to-workspace-8 = [ "<Shift>F8" ];
|
||||
move-to-workspace-9 = [ "<Shift>F9" ];
|
||||
switch-to-workspace-1 = [ "F1" ];
|
||||
switch-to-workspace-2 = [ "F2" ];
|
||||
switch-to-workspace-3 = [ "F3" ];
|
||||
switch-to-workspace-4 = [ "F4" ];
|
||||
switch-to-workspace-5 = [ "F5" ];
|
||||
switch-to-workspace-6 = [ "F6" ];
|
||||
switch-to-workspace-7 = [ "F7" ];
|
||||
switch-to-workspace-8 = [ "F8" ];
|
||||
switch-to-workspace-9 = [ "F9" ];
|
||||
};
|
||||
|
||||
"org/gnome/desktop/input-sources" = {
|
||||
mru-sources = [
|
||||
(mkTuple [
|
||||
"xkb"
|
||||
"us"
|
||||
])
|
||||
];
|
||||
sources = [
|
||||
(mkTuple [
|
||||
"xkb"
|
||||
"se+us"
|
||||
])
|
||||
];
|
||||
xkb-options = [ "caps:ctrl_modifier" ];
|
||||
};
|
||||
|
||||
"org/gnome/desktop/interface" = {
|
||||
enable-animations = false;
|
||||
enable-hot-corners = false;
|
||||
show-battery-percentage = true;
|
||||
font-name = "Inter Variable 11";
|
||||
document-font-name = "Inter Variable 11";
|
||||
monospace-font-name = "Berkeley Mono 11";
|
||||
toolkit-accessibility = false;
|
||||
};
|
||||
|
||||
"org/gnome/desktop/search-providers" = {
|
||||
disabled = [
|
||||
"org.gnome.Contacts.desktop"
|
||||
"org.gnome.Nautilus.desktop"
|
||||
"org.gnome.Calendar.desktop"
|
||||
"org.gnome.clocks.desktop"
|
||||
"org.gnome.Epiphany.desktop"
|
||||
];
|
||||
sort-order = [
|
||||
"org.gnome.Contacts.desktop"
|
||||
"org.gnome.Documents.desktop"
|
||||
"org.gnome.Nautilus.desktop"
|
||||
"org.gnome.Settings.desktop"
|
||||
"org.gnome.Calculator.desktop"
|
||||
"org.gnome.Calendar.desktop"
|
||||
"org.gnome.clocks.desktop"
|
||||
"org.gnome.seahorse.Application.desktop"
|
||||
"org.gnome.Weather.desktop"
|
||||
"org.gnome.Characters.desktop"
|
||||
];
|
||||
};
|
||||
|
||||
"org/gnome/desktop/wm/preferences" = {
|
||||
focus-mode = "sloppy";
|
||||
num-workspaces = 10;
|
||||
resize-with-right-button = true;
|
||||
};
|
||||
|
||||
"org/gnome/GWeather4" = {
|
||||
temperature-unit = "centigrade";
|
||||
};
|
||||
|
||||
"org/gnome/Weather" = {
|
||||
locations = [
|
||||
(mkVariant (mkTuple [
|
||||
(mkUint32 2)
|
||||
(mkVariant (mkTuple [
|
||||
"Stockholm-Arlanda Airport"
|
||||
"ESSA"
|
||||
false
|
||||
[
|
||||
(mkTuple [
|
||||
1.0410888988146176
|
||||
0.31328660073298215
|
||||
])
|
||||
]
|
||||
[
|
||||
(mkTuple [
|
||||
1.0410888988146176
|
||||
0.31328660073298215
|
||||
])
|
||||
]
|
||||
]))
|
||||
]))
|
||||
];
|
||||
};
|
||||
|
||||
"org/gnome/desktop/calendar" = {
|
||||
show-weekdate = true;
|
||||
};
|
||||
|
||||
"org/gnome/mutter" = {
|
||||
center-new-windows = false;
|
||||
edge-tiling = true;
|
||||
};
|
||||
|
||||
"org/gnome/settings-daemon/plugins/color" = {
|
||||
night-light-schedule-automatic = false;
|
||||
night-light-schedule-from = 0.0;
|
||||
night-light-schedule-to = 0.0;
|
||||
night-light-temperature = mkUint32 3575;
|
||||
};
|
||||
|
||||
"org/gnome/shell" = {
|
||||
enabled-extensions = [
|
||||
"emoji-copy@felipeftn"
|
||||
"just-perfection-desktop@just-perfection"
|
||||
];
|
||||
};
|
||||
|
||||
"org/gnome/shell/extensions/emoji-copy" = {
|
||||
emoji-keybind = [ "<Super>e" ];
|
||||
};
|
||||
|
||||
"org/gnome/shell/extensions/just-perfection" = {
|
||||
animation = 0;
|
||||
notification-banner-position = 2;
|
||||
osd-position = 6;
|
||||
panel = false;
|
||||
panel-in-overview = true;
|
||||
startup-status = 0;
|
||||
switcher-popup-delay = false;
|
||||
top-panel-position = 0;
|
||||
};
|
||||
|
||||
"org/gnome/tweaks" = {
|
||||
show-extensions-notice = false;
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
}
|
64
home/common/niri.nix
Normal file
64
home/common/niri.nix
Normal file
|
@ -0,0 +1,64 @@
|
|||
{
|
||||
user,
|
||||
lib,
|
||||
pkgs,
|
||||
inputs',
|
||||
...
|
||||
}:
|
||||
{
|
||||
programs.niri = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
services.greetd = {
|
||||
enable = true;
|
||||
vt = 2;
|
||||
settings = rec {
|
||||
initial_session = {
|
||||
command = "${lib.getExe pkgs.greetd.tuigreet} --remember --time --cmd ${lib.getExe' pkgs.niri "niri-session"}";
|
||||
inherit user;
|
||||
};
|
||||
default_session = initial_session;
|
||||
};
|
||||
};
|
||||
|
||||
systemd.user = {
|
||||
services = {
|
||||
swaybg = {
|
||||
wantedBy = [ "niri.service" ];
|
||||
wants = [ "graphical-session.target" ];
|
||||
after = [ "graphical-session.target" ];
|
||||
serviceConfig = {
|
||||
ExecStart =
|
||||
let
|
||||
img = pkgs.fetchurl {
|
||||
url = "https://s3.nyaw.xyz/misskey//92772482-aef9-44e8-b1e2-1d49753a72fc.jpg";
|
||||
hash = "sha256-Y9TJ/xQQhqWq3t2wn1gS4NPGpuz1m7nu1ATcWWPKPW8=";
|
||||
};
|
||||
in
|
||||
"${lib.getExe pkgs.swaybg} -i ${img} -m fill";
|
||||
Restart = "on-failure";
|
||||
};
|
||||
};
|
||||
waybar = {
|
||||
wantedBy = [ "niri.service" ];
|
||||
wants = [ "graphical-session.target" ];
|
||||
after = [ "graphical-session.target" ];
|
||||
# path = [ (lib.makeBinPath [ pkgs.niri ]) ];
|
||||
serviceConfig = {
|
||||
ExecStart = lib.getExe pkgs.waybar;
|
||||
Restart = "on-failure";
|
||||
};
|
||||
};
|
||||
xwayland-satellite = {
|
||||
wantedBy = [ "niri.service" ];
|
||||
after = [ "graphical-session.target" ];
|
||||
wants = [ "graphical-session.target" ];
|
||||
serviceConfig = {
|
||||
ExecStart = lib.getExe pkgs.xwayland-satellite;
|
||||
Restart = "on-failure";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue