git: alias: add repack-*
[julm/julm-nix.git] / home-manager / profiles / graphical.nix
index 886a153b806840143bf7f99e8655849f8c8f3e8f..046118b562a522fc3665441ea324e4b5156b4de4 100644 (file)
@@ -1,4 +1,10 @@
-{ pkgs, lib, config, nixosConfig, ... }:
+{
+  pkgs,
+  lib,
+  config,
+  nixosConfig,
+  ...
+}:
 {
   imports = [
     ./redshift.nix
@@ -7,7 +13,7 @@
     pkgs.arandr
     pkgs.glib.bin
     pkgs.glxinfo
-    pkgs.gnome.dconf-editor
+    pkgs.dconf-editor
     pkgs.hicolor-icon-theme
     pkgs.pavucontrol
     pkgs.qpwgraph
     keycode 59 = semicolon period comma less ellipsis multiply ccedilla Ccedilla
     !   (nbsp) with AltGr+space and   (narrow nbsp) with AltGr+Shift+space
     keycode 65 = space space NoSymbol NoSymbol nobreakspace U202F
+
+    ! Use Caps Lock button for compose key
+    keysym Caps_Lock = Multi_key Caps_Lock
+    ! Remove shift lock functionality
+    clear Lock
   '';
   systemd.user.services.setxkbmap.Service.ExecStartPost =
     "${pkgs.xorg.xmodmap}/bin/xmodmap ${config.home.homeDirectory}/.Xmodmap";
-  programs.bash.shellAliases = {
-    gtk-light = "dconf write /org/gnome/desktop/interface/color-scheme '\"prefer-light\"'";
-    gtk-dark = "dconf write /org/gnome/desktop/interface/color-scheme '\"prefer-dark\"'";
+  programs.bash = {
+    initExtra = ''
+      gtk-theme () {
+        case $1 in
+          dark)
+            dconf write /org/gnome/desktop/interface/color-scheme "'prefer-dark'"
+            echo 'Net/ThemeName "Adwaita-dark"' > ~/.xsettingsd
+            systemctl --user kill -s HUP xsettingsd.service
+            ;;
+          light)
+            dconf write /org/gnome/desktop/interface/color-scheme "'prefer-light'"
+            echo 'Net/ThemeName "Adwaita"' > ~/.xsettingsd
+            systemctl --user kill -s HUP xsettingsd.service
+            ;;
+          *) echo "Usage: dark-mode <dark|light>";;
+        esac
+      }
+    '';
   };
+  # Required for gtk-theme to work.
+  services.xsettingsd.enable = true;
   dconf.settings = {
     "org/gnome/desktop/interface" = {
       color-scheme = lib.mkDefault "prefer-dark";
@@ -47,8 +75,8 @@
   gtk = {
     enable = lib.mkDefault true;
     theme.name = "Adwaita";
-    theme.package = pkgs.gnome.gnome-themes-extra;
-    iconTheme.package = pkgs.gnome.adwaita-icon-theme;
+    theme.package = pkgs.gnome-themes-extra;
+    iconTheme.package = pkgs.adwaita-icon-theme;
     iconTheme.name = "Adwaita";
     gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc";
     gtk3 = {