switch to fuzzel launcher and fix swaylock color

Replace wmenu with fuzzel configured in the sway color palette.
Fix swaylock background from tokyo night #1a1b26 to #0a0a0a.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-12 18:29:49 +02:00
co-authored by Claude Sonnet 4.6
parent 43ae60d979
commit e05c2566ba
3 changed files with 111 additions and 18 deletions
+17
View File
@@ -0,0 +1,17 @@
[main]
terminal=foot
width=30
lines=10
anchor=center
[colors]
background=0a0a0aff
text=f3eeeaff
match=cd0a00ff
selection=cd0a00ff
selection-text=f3eeeaff
border=cd0a00ff
[border]
width=2
radius=4
+25 -12
View File
@@ -1,4 +1,5 @@
set $mod Mod4 set $mod Mod4
floating_modifier $mod normal
set $left h set $left h
set $right l set $right l
set $up k set $up k
@@ -8,11 +9,15 @@ set $white #f3eeea
set $black #0a0a0a set $black #0a0a0a
set $term foot set $term foot
set $menu wmenu-run set $menu fuzzel
exec systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP DISPLAY
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP DISPLAY
exec "foot --server" exec "foot --server"
exec lxqt-policykit-agent
exec mako
output * bg ~/Pictures/henri.jpg fill output * bg ~/Pictures/nixgirl.png fill
input type:keyboard { input type:keyboard {
xkb_layout "se" xkb_layout "se"
@@ -23,6 +28,7 @@ input type:keyboard {
input type:touchpad { input type:touchpad {
tap enabled tap enabled
natural_scroll enabled natural_scroll enabled
scroll_factor 0.3
} }
default_border pixel default_border pixel
@@ -70,10 +76,10 @@ bindsym $mod+Shift+8 move container to workspace number 8
mode "resize" { mode "resize" {
bindsym Right resize shrink width 50px bindsym Right resize grow width 50px
bindsym Up resize grow height 50px bindsym Left resize shrink width 50px
bindsym Down resize shrink height 50px bindsym Down resize grow height 50px
bindsym Left resize grow width 50px bindsym Up resize shrink height 50px
bindsym Return mode "default" bindsym Return mode "default"
bindsym Escape mode "default" bindsym Escape mode "default"
bindsym $mod+r mode "default" bindsym $mod+r mode "default"
@@ -81,13 +87,20 @@ mode "resize" {
bindsym $mod+r mode "resize" bindsym $mod+r mode "resize"
gaps inner 10 gaps inner 10
exec_always pkill waybar; waybar exec_always sh -c 'pkill waybar; waybar'
bindsym XF86AudioRaiseVolume exec wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+
bindsym XF86AudioLowerVolume exec wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindsym XF86AudioMute exec wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bindsym XF86MonBrightnessUp exec brightnessctl set 5%+
bindsym XF86MonBrightnessDown exec brightnessctl set 5%-
bindsym $mod+Shift+s exec 'grim -l 0 -g "$(slurp)" - | wl-copy' bindsym $mod+Shift+s exec 'grim -l 0 -g "$(slurp)" - | wl-copy'
bindsym $mod+Alt+s exec 'mkdir -p ~/Pictures/Screenshots && grim -l 0 -g "$(slurp)" ~/Pictures/Screenshots/$(date +"%Y-%m-%d_%H-%M-%S").png' bindsym $mod+Alt+s exec 'mkdir -p ~/Pictures/Screenshots && grim -l 0 -g "$(slurp)" - | satty --filename - --output-filename ~/Pictures/Screenshots/$(date +"%Y-%m-%d_%H-%M-%S").png'
exec swayidle -w \ exec swayidle -w \
timeout 300 'swaylock -f -c 1a1b26' \ timeout 300 'swaylock -f -c 0a0a0a' \
timeout 600 'swaymsg "output * dpms off"' \ timeout 600 'swaymsg "output * dpms off"; wpctl set-mute @DEFAULT_AUDIO_SINK@ 1' \
resume 'swaymsg "output * dpms on"' \ resume 'swaymsg "output * dpms on"; wpctl set-mute @DEFAULT_AUDIO_SINK@ 0' \
before-sleep 'swaylock -f -c 1a1b26' before-sleep 'swaylock -f -c 0a0a0a'
+69 -6
View File
@@ -16,10 +16,18 @@
programs.zsh = { programs.zsh = {
enable = true; enable = true;
syntaxHighlighting.enable = true;
plugins = [
{
name = "fzf-tab";
src = "${pkgs.zsh-fzf-tab}/share/fzf-tab";
}
];
shellAliases = { shellAliases = {
n = "nvim"; n = "nvim";
rebuild = "sudo nixos-rebuild switch --flake ~/nixos-dotfiles"; rebuild = "sudo nixos-rebuild switch --flake ~/nixos-dotfiles";
tree = "eza --tree --level=2"; tree = "eza --tree --level=2";
ls = "eza --icons --all --header --long --git";
}; };
history = { history = {
size = 10000; size = 10000;
@@ -29,6 +37,8 @@
extended = true; extended = true;
}; };
initContent = '' initContent = ''
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}'
autoload -Uz up-line-or-beginning-search down-line-or-beginning-search autoload -Uz up-line-or-beginning-search down-line-or-beginning-search
zle -N up-line-or-beginning-search zle -N up-line-or-beginning-search
zle -N down-line-or-beginning-search zle -N down-line-or-beginning-search
@@ -105,7 +115,7 @@
programs.eza = { programs.eza = {
enable = true; enable = true;
enableZshIntegration = true; enableZshIntegration = false;
git = true; git = true;
icons = "auto"; icons = "auto";
}; };
@@ -121,8 +131,34 @@
# ── Git ───────────────────────────────────────────────────────────────────── # ── Git ─────────────────────────────────────────────────────────────────────
programs.git = { programs.git = {
enable = true; enable = true;
settings.user.name = "ulve"; settings = {
settings.user.email = "johansson.olov@gmail.com"; user.name = "ulve";
user.email = "johansson.olov@gmail.com";
};
includes = [
{
condition = "gitdir:~/code/";
path = "~/.config/git/work";
}
];
};
home.file.".config/git/work".text = ''
[user]
name = olov johansson
email = olov.johansson@futureordering.com
[credential "https://dev.azure.com"]
helper = manager
useHttpPath = true
[credential]
credentialStore = gpg
'';
programs.gpg.enable = true;
services.gpg-agent = {
enable = true;
pinentryPackage = pkgs.pinentry-curses;
}; };
programs.delta = { programs.delta = {
@@ -134,14 +170,20 @@
programs.ssh = { programs.ssh = {
enable = true; enable = true;
enableDefaultConfig = false; enableDefaultConfig = false;
settings = { matchBlocks = {
"codeberg.org" = { "codeberg.org" = {
IdentityFile = "~/.ssh/id_ed25519_codeberg"; identityFile = "~/.ssh/id_ed25519_codeberg";
};
"macbook" = {
hostname = "192.168.50.205";
user = "olovjohansson";
identityFile = "~/.ssh/id_ed25519";
}; };
}; };
}; };
# ── Config files ───────────────────────────────────────────────────────────── # ── Config files ─────────────────────────────────────────────────────────────
xdg.configFile."fuzzel/fuzzel.ini".source = ./config/fuzzel/fuzzel.ini;
xdg.configFile."qtile".source = ./config/qtile; xdg.configFile."qtile".source = ./config/qtile;
xdg.configFile."nvim" = { xdg.configFile."nvim" = {
source = config.lib.file.mkOutOfStoreSymlink "/home/ulve/nixos-dotfiles/config/dottily"; source = config.lib.file.mkOutOfStoreSymlink "/home/ulve/nixos-dotfiles/config/dottily";
@@ -150,10 +192,28 @@
xdg.configFile."waybar".source = ./config/waybar; xdg.configFile."waybar".source = ./config/waybar;
xdg.configFile."foot".source = ./config/foot; xdg.configFile."foot".source = ./config/foot;
# ── Notifications ────────────────────────────────────────────────────────────
services.mako = {
enable = true;
settings = {
background-color = "#0a0a0a";
text-color = "#f3eeea";
border-color = "#cd0a00";
border-radius = 4;
border-size = 2;
default-timeout = 5000;
max-icon-size = 48;
padding = "10,14";
};
};
# ── Packages ───────────────────────────────────────────────────────────────── # ── Packages ─────────────────────────────────────────────────────────────────
home.packages = with pkgs; [ home.packages = with pkgs; [
# general # general
claude-code # ai coding assistant claude-code # ai coding assistant
azure-cli # az cli
git-credential-manager # git credential helper (azure devops PAT)
pass # password store (used by GCM gpg backend)
brave # browser brave # browser
fastfetch # vanity fastfetch # vanity
jq # json processor jq # json processor
@@ -161,14 +221,17 @@
teams-for-linux # teams teams-for-linux # teams
# desktop / wayland # desktop / wayland
libnotify # notify-send
wl-clipboard # wayland copy utils wl-clipboard # wayland copy utils
slurp # select region in wayland for copy slurp # select region in wayland for copy
grim # grab images from wayland grim # grab images from wayland
satty # screenshot annotation
wlogout # logout menu wlogout # logout menu
wmenu # dynamic menu fuzzel # wayland launcher
swaylock # lock screen swaylock # lock screen
swayidle # idle management (dims/locks/sleeps) swayidle # idle management (dims/locks/sleeps)
waybar # status bar with left/center/right sections waybar # status bar with left/center/right sections
lxqt.lxqt-policykit # polkit authentication agent
telegram-desktop # Messaging telegram-desktop # Messaging
signal-desktop # Messaging signal-desktop # Messaging