feat (hosts/elistraee): add nixos-wsl config

This commit is contained in:
Henri Saudubray 2026-02-04 09:06:43 +00:00
parent d1c0846cf8
commit 7955b8220f
Signed by: hms
GPG key ID: 7065F57ED8856128
12 changed files with 243 additions and 143 deletions

View file

@ -1,101 +1,103 @@
{ pkgs, ... }:
{ pkgs, lib, config, ... }:
{
home = {
packages =
with pkgs;
[
gnome-tweaks
protonmail-bridge-gui
adw-gtk3
nerd-fonts.adwaita-mono
blackbox-terminal
zotero
zulip
discord
signal-desktop
gapless
newsflash
gnome-solanum
]
++ (with gnomeExtensions; [
blur-my-shell
clipboard-indicator
rounded-window-corners-reborn
runcat
caffeine
launch-new-instance
light-style
]);
config = lib.mkIf config.graphical.enable {
home = {
packages =
with pkgs;
[
gnome-tweaks
protonmail-bridge-gui
adw-gtk3
nerd-fonts.adwaita-mono
blackbox-terminal
zotero
zulip
discord
signal-desktop
gapless
newsflash
gnome-solanum
]
++ (with gnomeExtensions; [
blur-my-shell
clipboard-indicator
rounded-window-corners-reborn
runcat
caffeine
launch-new-instance
light-style
]);
file."librewolf-gnome-theme" = {
target = ".librewolf/default/chrome/librewolf-gnome-theme";
source = fetchTarball {
url = "https://github.com/rafaelmardojai/firefox-gnome-theme/archive/v143.tar.gz";
sha256 = "1gkfi77n8cn5xzl3wi9mggh7adirjrsnbqygg1mcvjy0ynmd6kfh";
file."librewolf-gnome-theme" = {
target = ".librewolf/default/chrome/librewolf-gnome-theme";
source = fetchTarball {
url = "https://github.com/rafaelmardojai/firefox-gnome-theme/archive/v143.tar.gz";
sha256 = "1gkfi77n8cn5xzl3wi9mggh7adirjrsnbqygg1mcvjy0ynmd6kfh";
};
};
};
};
programs.librewolf = {
enable = true;
profiles.default = {
name = "Default";
settings = {
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"svg.context-properties.content.enabled" = true;
"gnomeTheme.hideSingleTab" = true;
programs.librewolf = {
enable = true;
profiles.default = {
name = "Default";
settings = {
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"svg.context-properties.content.enabled" = true;
"gnomeTheme.hideSingleTab" = true;
};
userChrome = ''
@import "librewolf-gnome-theme/userChrome.css";
@import "librewolf-gnome-theme/theme/colors/dark.css";
'';
};
userChrome = ''
@import "librewolf-gnome-theme/userChrome.css";
@import "librewolf-gnome-theme/theme/colors/dark.css";
'';
};
};
dconf.settings = {
"org/gnome/TextEditor".keybindings = "vim";
"org/gnome/shell" = {
disable-user-extensions = false;
enabled-extensions = [
"clipboard-indicator@tudmotu.com"
"rounded-window-corners@fxgn"
"runcat@kolesnikov.se"
"caffeine@patapon.info"
"launch-new-instance@gnome-shell-extensions.gcampax.github.com"
dconf.settings = {
"org/gnome/TextEditor".keybindings = "vim";
"org/gnome/shell" = {
disable-user-extensions = false;
enabled-extensions = [
"clipboard-indicator@tudmotu.com"
"rounded-window-corners@fxgn"
"runcat@kolesnikov.se"
"caffeine@patapon.info"
"launch-new-instance@gnome-shell-extensions.gcampax.github.com"
];
};
"org/gnome/desktop/interface" = {
gtk-theme = "adw-gtk3";
show-battery-percentage = true;
};
"org/gnome/desktop/wm/preferences".button-layout = "appmenu:minimize,maximize,close";
"org/gnome/desktop/wm/keybindings" = {
switch-applications = [ "<Alt>grave" ];
switch-applications-backwards = [ "<Shift><Alt>grave" ];
switch-windows = [ "<Alt>Tab" ];
switch-windows-backwards = [ "<Shift><Alt>Tab" ];
};
"org/gnome/settings-daemon/plugins/media-keys".custom-keybindings = [
"/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/"
"/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/"
];
};
"org/gnome/desktop/interface" = {
gtk-theme = "adw-gtk3";
show-battery-percentage = true;
};
"org/gnome/desktop/wm/preferences".button-layout = "appmenu:minimize,maximize,close";
"org/gnome/desktop/wm/keybindings" = {
switch-applications = [ "<Alt>grave" ];
switch-applications-backwards = [ "<Shift><Alt>grave" ];
switch-windows = [ "<Alt>Tab" ];
switch-windows-backwards = [ "<Shift><Alt>Tab" ];
};
"org/gnome/settings-daemon/plugins/media-keys".custom-keybindings = [
"/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/"
"/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/"
];
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
name = "Terminal";
command = "blackbox";
binding = "<Super>Return";
};
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1" = {
name = "Dark mode switcher";
command = "${pkgs.writeShellScript "gnome-dark-mode-switcher" ''
SCHEMA=org.gnome.desktop.interface
KEY=color-scheme
if [ "$(gsettings get "$SCHEMA" "$KEY")" = "'prefer-dark'" ]; then
gsettings set "$SCHEMA" "$KEY" "prefer-light";
else
gsettings set "$SCHEMA" "$KEY" "prefer-dark";
fi
''}";
binding = "<Super>d";
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
name = "Terminal";
command = "blackbox";
binding = "<Super>Return";
};
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1" = {
name = "Dark mode switcher";
command = "${pkgs.writeShellScript "gnome-dark-mode-switcher" ''
SCHEMA=org.gnome.desktop.interface
KEY=color-scheme
if [ "$(gsettings get "$SCHEMA" "$KEY")" = "'prefer-dark'" ]; then
gsettings set "$SCHEMA" "$KEY" "prefer-light";
else
gsettings set "$SCHEMA" "$KEY" "prefer-dark";
fi
''}";
binding = "<Super>d";
};
};
};
}