Desktop usability adjustments #1
@@ -45,6 +45,11 @@ TODO - disable root user
 | 
				
			|||||||
 I install with --no-root-passwd and set users.mutableUsers = false in configuration.nix
 | 
					 I install with --no-root-passwd and set users.mutableUsers = false in configuration.nix
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## TODO
 | 
				
			||||||
 | 
					- Have a wofi power menu with https://github.com/RiteshChepuri/wofi-scripts/blob/main/wofi-power-menu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Inspirations
 | 
					## Inspirations
 | 
				
			||||||
- https://github.com/the-nix-way/dev-templates
 | 
					- https://github.com/the-nix-way/dev-templates
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -8,9 +8,14 @@
 | 
				
			|||||||
    pkgs.brightnessctl
 | 
					    pkgs.brightnessctl
 | 
				
			||||||
    pkgs.cliphist
 | 
					    pkgs.cliphist
 | 
				
			||||||
    pkgs.wl-clipboard
 | 
					    pkgs.wl-clipboard
 | 
				
			||||||
 | 
					    pkgs.gcr # Provides org.gnome.keyring.SystemPrompter
 | 
				
			||||||
  ];
 | 
					  ];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Also use gnome keyring
 | 
				
			||||||
 | 
					  services.gnome-keyring.enable = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  wayland.windowManager.hyprland = {
 | 
					  wayland.windowManager.hyprland = {
 | 
				
			||||||
    enable = true;
 | 
					    enable = true;
 | 
				
			||||||
    systemd.enable = true;
 | 
					    systemd.enable = true;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -7,6 +7,8 @@ in
 | 
				
			|||||||
        enable = true;
 | 
					        enable = true;
 | 
				
			||||||
        shellIntegration.enableFishIntegration = true;
 | 
					        shellIntegration.enableFishIntegration = true;
 | 
				
			||||||
        settings = {
 | 
					        settings = {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            # # import the colors from the stylix theme, but keep the background black
 | 
					            # # import the colors from the stylix theme, but keep the background black
 | 
				
			||||||
            # color0 = stylix.stylix.base16Scheme.base00;
 | 
					            # color0 = stylix.stylix.base16Scheme.base00;
 | 
				
			||||||
            # color8 = stylix.stylix.base16Scheme.base08;
 | 
					            # color8 = stylix.stylix.base16Scheme.base08;
 | 
				
			||||||
@@ -37,6 +39,8 @@ in
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
            background = "#000000";
 | 
					            background = "#000000";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            font_family = stylix.stylix.fonts.monospace.name;
 | 
				
			||||||
 | 
					            font_size = stylix.stylix.fonts.sizes.terminal;
 | 
				
			||||||
            confirm_os_window_close = 0;
 | 
					            confirm_os_window_close = 0;
 | 
				
			||||||
            enable_audio_bell = false;
 | 
					            enable_audio_bell = false;
 | 
				
			||||||
            cursor_trail = 3;
 | 
					            cursor_trail = 3;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -9,7 +9,7 @@
 | 
				
			|||||||
        cursor = {
 | 
					        cursor = {
 | 
				
			||||||
            package = pkgs.apple-cursor;
 | 
					            package = pkgs.apple-cursor;
 | 
				
			||||||
            name = "macOS";
 | 
					            name = "macOS";
 | 
				
			||||||
            size = 32;
 | 
					            size = 35;
 | 
				
			||||||
        };
 | 
					        };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        iconTheme = {
 | 
					        iconTheme = {
 | 
				
			||||||
@@ -44,10 +44,10 @@
 | 
				
			|||||||
            };
 | 
					            };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            sizes = {
 | 
					            sizes = {
 | 
				
			||||||
                applications = 14;
 | 
					                applications = 15;
 | 
				
			||||||
                desktop = 14;
 | 
					                desktop = 15;
 | 
				
			||||||
                popups = 12;
 | 
					                popups = 12;
 | 
				
			||||||
                terminal = 14;
 | 
					                terminal = 15;
 | 
				
			||||||
            };
 | 
					            };
 | 
				
			||||||
        };
 | 
					        };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -84,9 +84,10 @@
 | 
				
			|||||||
    stylix.targets = {
 | 
					    stylix.targets = {
 | 
				
			||||||
        hyprpaper.enable = true;
 | 
					        hyprpaper.enable = true;
 | 
				
			||||||
        hyprlock.enable = true;
 | 
					        hyprlock.enable = true;
 | 
				
			||||||
        wofi.enable = true;
 | 
					        gnome.enable = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # disabled because they overwrite too many settings
 | 
					        # disabled because they overwrite too many settings
 | 
				
			||||||
 | 
					        # wofi.enable = true;
 | 
				
			||||||
        # vscode.enable = true;
 | 
					        # vscode.enable = true;
 | 
				
			||||||
        # waybar.enable = true;
 | 
					        # waybar.enable = true;
 | 
				
			||||||
        # kitty.enable = true;
 | 
					        # kitty.enable = true;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,11 +1,7 @@
 | 
				
			|||||||
{ config, pkgs, lib, ... }:
 | 
					{ config, pkgs, lib, ... }:
 | 
				
			||||||
let
 | 
					let
 | 
				
			||||||
  accent = "#ffffff";
 | 
					  stylix = import ./stylix.nix { inherit pkgs; };
 | 
				
			||||||
  background = "#000000";
 | 
					
 | 
				
			||||||
  background-alt = "#000000";
 | 
					 | 
				
			||||||
  foreground = "##ffffff";
 | 
					 | 
				
			||||||
  rounding = 5;
 | 
					 | 
				
			||||||
  font-size = 25;
 | 
					 | 
				
			||||||
in {
 | 
					in {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  home.packages = with pkgs; [ wofi-emoji ];
 | 
					  home.packages = with pkgs; [ wofi-emoji ];
 | 
				
			||||||
@@ -14,31 +10,86 @@ in {
 | 
				
			|||||||
    enable = true;
 | 
					    enable = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    settings = {
 | 
					    settings = {
 | 
				
			||||||
      allow_markup = true;
 | 
					      # global layout
 | 
				
			||||||
      width = 500;
 | 
					      width = "50%";
 | 
				
			||||||
      height = 400;
 | 
					      height = "50%";
 | 
				
			||||||
 | 
					      orientation = "vertical";
 | 
				
			||||||
 | 
					      hide_scroll = true;
 | 
				
			||||||
 | 
					      line_wrap = "off";
 | 
				
			||||||
 | 
					      dynamic_lines = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      # search behaviour
 | 
				
			||||||
 | 
					      matching = "fuzzy";
 | 
				
			||||||
 | 
					      single_click = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      show = "drun";
 | 
					      show = "drun";
 | 
				
			||||||
      prompt = "Launch...";
 | 
					      prompt = "Launch...";
 | 
				
			||||||
      normal_window = true;
 | 
					      # normal_window = true;
 | 
				
			||||||
      layer = "top";
 | 
					      layer = "top";
 | 
				
			||||||
      term = "foot";
 | 
					      term = "foot";
 | 
				
			||||||
      orientation = "vertical";
 | 
					 | 
				
			||||||
      halign = "fill";
 | 
					      halign = "fill";
 | 
				
			||||||
      line_wrap = "off";
 | 
					
 | 
				
			||||||
      dynamic_lines = false;
 | 
					      # Rich rendering
 | 
				
			||||||
 | 
					      allow_markup = true;
 | 
				
			||||||
      allow_images = true;
 | 
					      allow_images = true;
 | 
				
			||||||
      image_size = 24;
 | 
					      image_size = 24;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      exec_search = false;
 | 
					      exec_search = false;
 | 
				
			||||||
      hide_search = false;
 | 
					      hide_search = false;
 | 
				
			||||||
      parse_search = false;
 | 
					      parse_search = false;
 | 
				
			||||||
      insensitive = true;
 | 
					      insensitive = true;
 | 
				
			||||||
      hide_scroll = true;
 | 
					 | 
				
			||||||
      no_actions = true;
 | 
					      no_actions = true;
 | 
				
			||||||
      sort_order = "default";
 | 
					
 | 
				
			||||||
      gtk_dark = true;
 | 
					
 | 
				
			||||||
      filter_rate = 100;
 | 
					      filter_rate = 100;
 | 
				
			||||||
      key_expand = "Tab";
 | 
					      key_expand = "Tab";
 | 
				
			||||||
      key_exit = "Escape";
 | 
					      key_exit = "Escape";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    style = ''
 | 
				
			||||||
 | 
					      * {
 | 
				
			||||||
 | 
					        font-family: ${stylix.stylix.fonts.sansSerif.name};
 | 
				
			||||||
 | 
					        font-size: ${builtins.toString (stylix.stylix.fonts.sizes.applications + 10)}px;
 | 
				
			||||||
 | 
					        color: ${stylix.stylix.base16Scheme.base04};
 | 
				
			||||||
 | 
					        background: transparent;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      #window {
 | 
				
			||||||
 | 
					        background: rgba(41, 46, 66, 0.5);
 | 
				
			||||||
 | 
					        margin: auto;
 | 
				
			||||||
 | 
					        padding: 10px;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      #input {
 | 
				
			||||||
 | 
					        padding: 10px;
 | 
				
			||||||
 | 
					        margin-bottom: 10px;
 | 
				
			||||||
 | 
					        border-radius: 15px;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      #outer-box {
 | 
				
			||||||
 | 
					        padding: 20px;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      #img {
 | 
				
			||||||
 | 
					        margin-right: 6px;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      #entry {
 | 
				
			||||||
 | 
					        padding: 10px;
 | 
				
			||||||
 | 
					        border-radius: 15px;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      #entry:selected {
 | 
				
			||||||
 | 
					        background-color: #2e3440;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      #text {
 | 
				
			||||||
 | 
					        margin: 2px;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    '';
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -69,7 +69,3 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  boot.blacklistedKernelModules = [ "nouveau" "nvidia" "nvidia_drm" "nvidia_modeset" ];
 | 
					  boot.blacklistedKernelModules = [ "nouveau" "nvidia" "nvidia_drm" "nvidia_modeset" ];
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Warning: used to have
 | 
					 | 
				
			||||||
# lib.mkdDefault
 | 
					 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user