Nixifying gnome config

This commit is contained in:
Lyes Saadi 2025-08-04 12:50:23 +01:00
parent d29398f6d5
commit e43362f69a
Signed by: lyes
GPG key ID: 55A1D803917CF39A
3 changed files with 150 additions and 10 deletions

18
flake.lock generated
View file

@ -93,11 +93,11 @@
]
},
"locked": {
"lastModified": 1754168537,
"narHash": "sha256-Q3OyUdFef0Rohs9GeK6rnhEeSxrDWic+GELC5NomAVU=",
"lastModified": 1754225444,
"narHash": "sha256-mv01SQtqlhBMavc1dgNjgqJw4WfZxy+w3xBgwJU3YmU=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "d492e3c3811ebd0e67bad5145c618b108cf84a4f",
"rev": "0de18bd5c6681280d7ae017fa34ffd91bdcf0557",
"type": "github"
},
"original": {
@ -146,11 +146,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1753122741,
"narHash": "sha256-nFxE8lk9JvGelxClCmwuJYftbHqwnc01dRN4DVLUroM=",
"lastModified": 1754229794,
"narHash": "sha256-yOl7REX6O/1mh+tpscJPKgjK6nmXSMOB1xhmDNAMUZM=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "cc66fddc6cb04ab479a1bb062f4d4da27c936a22",
"rev": "a872d985392ee5b19d8409bfcc3f106de2070070",
"type": "github"
},
"original": {
@ -258,11 +258,11 @@
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1754138446,
"narHash": "sha256-dv9H6HK/yGHYgmixBlyQxgSVyMQvKxJx/hDhngqGkvY=",
"lastModified": 1754193284,
"narHash": "sha256-ZGLXnpXy7vcTDLC1yLQSJOclsilvK+RNFVVEeO0ei/0=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"rev": "c451de612fa40c25d7f0532f8550a6f99dedf6e2",
"rev": "ac2b25e76f5bfe1e30ae39409dfa450c5c1bc945",
"type": "github"
},
"original": {

View file

@ -0,0 +1,119 @@
{ pkgs, lib, ... }:
with lib.hm.gvariant;
let
extensions = with pkgs.gnomeExtensions; [
appindicator
dash-to-panel
caffeine
blur-my-shell
vitals
gsconnect
weather-oclock
];
in
{
dconf.settings = {
# Gnome Settings
## Appearance
"org/gnome/desktop/interface" = {
accent-color = "purple";
clock-format = "24h";
clock-show-seconds = true;
clock-show-weekday = true;
color-scheme = "prefer-dark";
document-font-name = "Adwaita Sans 11";
font-antialiasing = "grayscale";
font-hinting = "slight";
font-name = "Adwaita Sans 11";
gtk-theme = "adw-gtk3-dark";
monospace-font-name = "JetBrainsMonoNL Nerd Font Propo 10";
show-battery-percentage = true;
toolkit-accessibility = false;
};
"org/gnome/desktop/background" = {
color-shading-type = "solid";
picture-options = "zoom";
picture-uri = "file:///home/lyes/.config/background";
picture-uri-dark = "file:///home/lyes/.config/background";
};
## Behaviour
"org/gnome/mutter" = {
dynamic-workspaces = true;
edge-tiling = true;
experimental-features = [ "scale-monitor-framebuffer" "xwayland-native-scaling" ];
};
## Energy
"org/gnome/desktop/session" = {
idle-delay = mkUint32 600;
};
## Privacy
"org/gnome/desktop/privacy" = {
remove-old-temp-files = true;
remove-old-trash-files = true;
};
"org/gnome/system/location" = {
enabled = true;
};
## Inputs
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
binding = "<Super>Return";
command = "kgx";
name = "Terminal";
};
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1" = {
binding = "<Super>n";
command = "nautilus -w";
name = "Nautilus";
};
"org/gnome/desktop/peripherals/touchpad" = {
click-method = "areas";
disable-while-typing = false;
speed = 0.0;
two-finger-scrolling-enabled = true;
};
## Shell & Extensions
"org/gnome/shell" = {
disable-user-extensions = false;
enabled-extensions = map (x: x.extensionUuid) extensions;
favorite-apps = [ "zen-beta.desktop" "thunderbird.desktop" "vesktop.desktop" "element-desktop.desktop" "org.signal.Signal.desktop" "com.github.xeco23.WasIstLos.desktop" "org.gnome.Nautilus.desktop" ];
last-selected-power-profile = "power-saver";
remember-mount-password = true;
};
## Extensions settings
"org/gnome/shell/extensions/caffeine" = {
show-notifications = false;
};
"org/gnome/shell/extensions/vitals" = {
hot-sensors = [ "_processor_usage_" "_memory_usage_" "_memory_swap_usage_" "__temperature_max__" "__temperature_avg__" ];
include-static-gpu-info = true;
show-gpu = true;
};
## Gnome Apps
"org/gnome/shell/weather" = {
automatic-location = true;
};
"org/gnome/desktop/calendar" = {
show-weekdate = true;
};
"org/gnome/tweaks" = {
show-extensions-notice = false;
};
};
}

View file

@ -1,9 +1,30 @@
{ ... }:
{ pkgs, ... }:
let
extensions = with pkgs.gnomeExtensions; [
appindicator
dash-to-panel
caffeine
blur-my-shell
vitals
gsconnect
weather-oclock
];
in
{
# Should activate that and translate things
# xdg.userDirs.enable = true;
imports = [
./dconf.nix
];
programs.gnome-shell = {
enable = true;
extensions = map (x: { id = x.extensionUuid; package = x; }) extensions;
};
# MPD
services.mpd = {
enable = true;
musicDirectory = /home/lyes/Musique/MPD;