From: Andrew Date: Fri, 22 Aug 2025 18:38:02 +0000 (-0400) Subject: screenshot manager PRINT / SUPER+SHIFT+S X-Git-Url: http://git.skullheadx.com/projects/dotfiles.html?a=commitdiff_plain;h=b0ec7bdd65b701baaea4de01bf673b5996450e1a;p=nixos.git screenshot manager PRINT / SUPER+SHIFT+S --- diff --git a/configuration.nix b/configuration.nix index 790532b..13d3a6b 100644 --- a/configuration.nix +++ b/configuration.nix @@ -103,7 +103,23 @@ nerd-fonts.jetbrains-mono nerd-fonts.fira-code nerd-fonts.droid-sans-mono + noto-fonts-color-emoji ]; + + + security.rtkit.enable = true; + services.pipewire = { + enable = true; + audio.enable = true; + pulse.enable = true; + alsa.enable = true; + }; + services.pipewire.wireplumber.enable = true; + + hardware = { + opengl.enable = true; + }; + # Some programs need SUID wrappers, can be configured further or are # started in user sessions. # programs.mtr.enable = true; diff --git a/home.nix b/home.nix index b25457d..602a2de 100644 --- a/home.nix +++ b/home.nix @@ -65,6 +65,15 @@ hyprgraphics hyprland-qtutils + helvum + pavucontrol + + grim + slurp + swappy + + + # # It is sometimes useful to fine-tune packages, for example, by applying # # overrides. You can do that directly here, just don't forget the # # parentheses. Maybe you want to install Nerd Fonts with a limited number of @@ -92,6 +101,21 @@ # org.gradle.daemon.idletimeout=3600000 # ''; home.file = { + ".config/swappy/config".text = '' + [Default] + save_dir=$HOME/Screenshots + save_filename_format=Screenshot-%Y%m%d-%H%M%S.png + show_panel=true + line_size=5 + text_size=20 + text_font=monospace + paint_mode=brush + early_exit=true + fill_shape=false + auto_save=true + transparent=true + transparency=50 + ''; }; @@ -113,6 +137,7 @@ # home.sessionVariables = { EDITOR = "neovim"; + NIXOS_OZONE_WL = "1"; }; programs.brave.enable = true; @@ -153,7 +178,10 @@ extraPortals = [ pkgs.xdg-desktop-portal-hyprland ]; }; - + services.gnome-keyring = { + enable = true; + }; + services.hyprpolkitagent.enable = true; home.pointerCursor = { hyprcursor.enable = true; diff --git a/hyprland/binds.nix b/hyprland/binds.nix index a73016b..d89f155 100644 --- a/hyprland/binds.nix +++ b/hyprland/binds.nix @@ -60,7 +60,9 @@ in "$mod, d, exec, ghostty" "$mod, b, exec, brave" "$mod, space, exec, pkill rofi || rofi -show drun" - "$mod, s, exec, pkill hyprpicker || hyprpicker -ar" + "$mod, p, exec, pkill hyprpicker || hyprpicker -ar" + "$mod SHIFT, s, exec, pkill slurp || grim -g \"$(slurp)\" - | wl-copy" + ", PRINT, exec, pkill slurp swappy || grim -g \"$(slurp)\" - | swappy -f -" ", XF86Explorer, exec, hyprlock" ", F1, exec, hyprlock" ", XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ && notify-send 'Volume Up'" @@ -82,6 +84,8 @@ in ", F4, workspace, 3" ", XF86Tools, workspace, 3" + + ] ++ workspaces; diff --git a/waybar.nix b/waybar.nix index 905dcd6..cdc18b1 100644 --- a/waybar.nix +++ b/waybar.nix @@ -5,8 +5,8 @@ settings = [ { - output = [ "DP-3" "DP-2"]; - # height = 20; # Waybar height + output = [ "DP-3"]; + #height = 24; # Waybar height spacing = 4; # Gaps between modules fixed-center = true; @@ -52,14 +52,14 @@ }; mpris = { - format = " {status_icon} {dynamic}"; + format = " {status_icon} {dynamic}"; interval = 1; dynamic-len = 40; dynamic-order = [ "title" "artist" ]; - ignored-players = [ "firefox" ]; + ignored-players = [ "brave" ]; status-icons = { playing = "▶"; paused = "⏸"; @@ -115,13 +115,14 @@ "" ]; }; - on-click = "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; + #on-click = "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; + on-click = "pavucontrol"; }; } # Bar for DP-2 only { - output = []; + output = [ "DP-2" ]; #height = 24; spacing = 4; @@ -172,7 +173,7 @@ window#waybar { /* `otf-font-awesome` is required to be installed for icons */ - font-family: FontAwesome, monospace; + font-family: jetbrains-mono, monospace; background-color: transparent; border-bottom: 0px; color: #ebdbb2;