101 lines
3 KiB
Nix
101 lines
3 KiB
Nix
{ pkgs, ... }:
|
|
{
|
|
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";
|
|
};
|
|
};
|
|
};
|
|
|
|
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";
|
|
'';
|
|
};
|
|
};
|
|
|
|
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/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";
|
|
};
|
|
};
|
|
}
|