mirror of
https://codeberg.org/tmayoff/.dotfiles.git
synced 2025-12-06 08:48:34 -05:00
Waybar and sway configs
This commit is contained in:
parent
510c3a6421
commit
1d9c97b17a
2 changed files with 347 additions and 5 deletions
|
|
@ -2,9 +2,338 @@
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: {
|
}: let
|
||||||
|
mod = "Mod4";
|
||||||
|
term = "kitty";
|
||||||
|
menu = "wmenu-run";
|
||||||
|
in {
|
||||||
imports = [../common.nix ../gnome.nix ../home-backup.nix ../gui.nix];
|
imports = [../common.nix ../gnome.nix ../home-backup.nix ../gui.nix];
|
||||||
|
|
||||||
|
programs.feh.enable = true;
|
||||||
|
programs.waybar = {
|
||||||
|
enable = true;
|
||||||
|
style = ''
|
||||||
|
* {
|
||||||
|
font-size: 15px;
|
||||||
|
font-family: "CodeNewRoman Nerd Font Propo";
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar {
|
||||||
|
all:unset;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-left {
|
||||||
|
padding: 7px;
|
||||||
|
margin: 10 0 5 10;
|
||||||
|
border-radius: 10px;
|
||||||
|
background: alpha(@background, .6);
|
||||||
|
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-center {
|
||||||
|
padding: 7px;
|
||||||
|
margin: 10 0 5 0;
|
||||||
|
border-radius: 10px;
|
||||||
|
background: alpha(@background, .6);
|
||||||
|
box-shadow: 0px 0px 2px rgab(0, 0, 0, .6);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-right {
|
||||||
|
padding: 7px;
|
||||||
|
margin: 10 0 5 0;
|
||||||
|
border-radius: 10px;
|
||||||
|
background: alpha(@background, .6);
|
||||||
|
box-shadow: 0px 0px 2px rgab(0, 0, 0, .6);
|
||||||
|
}
|
||||||
|
|
||||||
|
tooltip {
|
||||||
|
background: @background
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
mainBar = {
|
||||||
|
layer = "top";
|
||||||
|
position = "top";
|
||||||
|
reload_style_on_change = true;
|
||||||
|
|
||||||
|
modules-left = ["clock" "tray"];
|
||||||
|
modules-center = ["sway/workspaces"];
|
||||||
|
modules-right = ["battery"];
|
||||||
|
|
||||||
|
"sway/workspaces" = {
|
||||||
|
format = "{icon}";
|
||||||
|
format-icons = {
|
||||||
|
active = "";
|
||||||
|
default = "";
|
||||||
|
empty = "";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
"clock" = {
|
||||||
|
format = "{:%I:%M:%S %p} ";
|
||||||
|
interval = 1;
|
||||||
|
tooltip-format = "<tt>{calendar}</tt>";
|
||||||
|
calendar = {
|
||||||
|
format = {
|
||||||
|
today = "<span color='#fAfBfC'><b>{}</b></span>";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
actions = {
|
||||||
|
on-click-right = "shift_down";
|
||||||
|
on-clock = "shift_up";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
battery = {
|
||||||
|
interval = 30;
|
||||||
|
states = {
|
||||||
|
good = 95;
|
||||||
|
warning = 30;
|
||||||
|
critical = 20;
|
||||||
|
};
|
||||||
|
format = "{capacity}% {icon}";
|
||||||
|
format-charging = "{capacicty}% ";
|
||||||
|
format-plugged = "{capacity}% ";
|
||||||
|
format-alt = "{time} {icon}";
|
||||||
|
format-icons = [
|
||||||
|
""
|
||||||
|
""
|
||||||
|
""
|
||||||
|
""
|
||||||
|
""
|
||||||
|
""
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
tray = {
|
||||||
|
icon-size = 14;
|
||||||
|
spacing = 10;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
wayland.windowManager.sway = {
|
||||||
|
enable = true;
|
||||||
|
checkConfig = true;
|
||||||
|
config = {
|
||||||
|
output."*".scale = "1";
|
||||||
|
|
||||||
|
startup = [
|
||||||
|
{command = "feh .config/flake/wallpaper.jpp";}
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
|
# Home row direction keys, like vim
|
||||||
|
up = "k";
|
||||||
|
left = "h";
|
||||||
|
down = "j";
|
||||||
|
right = "l";
|
||||||
|
|
||||||
|
### Idle configuration
|
||||||
|
#
|
||||||
|
# Example configuration:
|
||||||
|
#
|
||||||
|
# exec swayidle -w \
|
||||||
|
# timeout 300 'swaylock -f -c 000000' \
|
||||||
|
# timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
|
||||||
|
# before-sleep 'swaylock -f -c 000000'
|
||||||
|
#
|
||||||
|
# This will lock your screen after 300 seconds of inactivity, then turn off
|
||||||
|
# your displays after another 300 seconds, and turn your screens back on when
|
||||||
|
# resumed. It will also lock your screen before your computer goes to sleep.
|
||||||
|
|
||||||
|
### Input configuration
|
||||||
|
#
|
||||||
|
# Example configuration:
|
||||||
|
#
|
||||||
|
# input "2:14:SynPS/2_Synaptics_TouchPad" {
|
||||||
|
# dwt enabled
|
||||||
|
# tap enabled
|
||||||
|
# natural_scroll enabled
|
||||||
|
# middle_emulation enabled
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
# You can get the names of your inputs by running: swaymsg -t get_inputs
|
||||||
|
# Read `man 5 sway-input` for more information about this section.
|
||||||
|
|
||||||
|
input = {
|
||||||
|
"*" = {
|
||||||
|
tap = "enabled";
|
||||||
|
natural_scroll = "enabled";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
### Key bindings
|
||||||
|
#
|
||||||
|
# Basics:
|
||||||
|
|
||||||
|
keybindings = {
|
||||||
|
# Start a terminal
|
||||||
|
"${mod}+Return" = "exec ${term}";
|
||||||
|
|
||||||
|
# Kill focused window
|
||||||
|
"${mod}+Shift+q" = "kill";
|
||||||
|
|
||||||
|
# Start launcher
|
||||||
|
"${mod}+d" = "exec ${menu}";
|
||||||
|
|
||||||
|
# Reload the configuration file
|
||||||
|
"${mod}+Shift+c" = "reload";
|
||||||
|
|
||||||
|
"${mod}+r" = "mode resize";
|
||||||
|
|
||||||
|
# Moving around:
|
||||||
|
|
||||||
|
# Move your focus around
|
||||||
|
# "${mod}+$left" = "focus left";
|
||||||
|
# "${mod}+$down" = "focus down";
|
||||||
|
# "${mod}+$up" = "focus up";
|
||||||
|
# "${mod}+$right" = "focus right";
|
||||||
|
# Or use $mod+[up|down|left|right]
|
||||||
|
"${mod}+Left" = "focus left";
|
||||||
|
"${mod}+Down" = "focus down";
|
||||||
|
"${mod}+Up" = "focus up";
|
||||||
|
"${mod}+Right" = "focus right";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Drag floating windows by holding down $mod and left mouse button.
|
||||||
|
# Resize them with right mouse button + $mod.
|
||||||
|
# Despite the name, also works for non-floating windows.
|
||||||
|
# Change normal to inverse to use left mouse button for resizing and right
|
||||||
|
# mouse button for dragging.
|
||||||
|
# floating_modifier $mod normal
|
||||||
|
|
||||||
|
# Exit sway (logs you out of your Wayland session)
|
||||||
|
# bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
|
||||||
|
|
||||||
|
# # Move the focused window with the same, but add Shift
|
||||||
|
# bindsym $mod+Shift+$left move left
|
||||||
|
# bindsym $mod+Shift+$down move down
|
||||||
|
# bindsym $mod+Shift+$up move up
|
||||||
|
# bindsym $mod+Shift+$right move right
|
||||||
|
# # Ditto, with arrow keys
|
||||||
|
# bindsym $mod+Shift+Left move left
|
||||||
|
# bindsym $mod+Shift+Down move down
|
||||||
|
# bindsym $mod+Shift+Up move up
|
||||||
|
# bindsym $mod+Shift+Right move right
|
||||||
|
# #
|
||||||
|
# # Workspaces:
|
||||||
|
# #
|
||||||
|
# # Switch to workspace
|
||||||
|
# bindsym $mod+1 workspace number 1
|
||||||
|
# bindsym $mod+2 workspace number 2
|
||||||
|
# bindsym $mod+3 workspace number 3
|
||||||
|
# bindsym $mod+4 workspace number 4
|
||||||
|
# bindsym $mod+5 workspace number 5
|
||||||
|
# bindsym $mod+6 workspace number 6
|
||||||
|
# bindsym $mod+7 workspace number 7
|
||||||
|
# bindsym $mod+8 workspace number 8
|
||||||
|
# bindsym $mod+9 workspace number 9
|
||||||
|
# bindsym $mod+0 workspace number 10
|
||||||
|
# # Move focused container to workspace
|
||||||
|
# bindsym $mod+Shift+1 move container to workspace number 1
|
||||||
|
# bindsym $mod+Shift+2 move container to workspace number 2
|
||||||
|
# bindsym $mod+Shift+3 move container to workspace number 3
|
||||||
|
# bindsym $mod+Shift+4 move container to workspace number 4
|
||||||
|
# bindsym $mod+Shift+5 move container to workspace number 5
|
||||||
|
# bindsym $mod+Shift+6 move container to workspace number 6
|
||||||
|
# bindsym $mod+Shift+7 move container to workspace number 7
|
||||||
|
# bindsym $mod+Shift+8 move container to workspace number 8
|
||||||
|
# bindsym $mod+Shift+9 move container to workspace number 9
|
||||||
|
# bindsym $mod+Shift+0 move container to workspace number 10
|
||||||
|
# # Note: workspaces can have any name you want, not just numbers.
|
||||||
|
# # We just use 1-10 as the default.
|
||||||
|
# #
|
||||||
|
# # Layout stuff:
|
||||||
|
# #
|
||||||
|
# # You can "split" the current object of your focus with
|
||||||
|
# # $mod+b or $mod+v, for horizontal and vertical splits
|
||||||
|
# # respectively.
|
||||||
|
# bindsym $mod+b splith
|
||||||
|
# bindsym $mod+v splitv
|
||||||
|
|
||||||
|
# # Switch the current container between different layout styles
|
||||||
|
# bindsym $mod+s layout stacking
|
||||||
|
# bindsym $mod+w layout tabbed
|
||||||
|
# bindsym $mod+e layout toggle split
|
||||||
|
|
||||||
|
# # Make the current focus fullscreen
|
||||||
|
# bindsym $mod+f fullscreen
|
||||||
|
|
||||||
|
# # Toggle the current focus between tiling and floating mode
|
||||||
|
# bindsym $mod+Shift+space floating toggle
|
||||||
|
|
||||||
|
# # Swap focus between the tiling area and the floating area
|
||||||
|
# bindsym $mod+space focus mode_toggle
|
||||||
|
|
||||||
|
# # Move focus to the parent container
|
||||||
|
# bindsym $mod+a focus parent
|
||||||
|
# #
|
||||||
|
# # Scratchpad:
|
||||||
|
# #
|
||||||
|
# # Sway has a "scratchpad", which is a bag of holding for windows.
|
||||||
|
# # You can send windows there and get them back later.
|
||||||
|
|
||||||
|
# # Move the currently focused window to the scratchpad
|
||||||
|
# bindsym $mod+Shift+minus move scratchpad
|
||||||
|
|
||||||
|
# # Show the next scratchpad window or hide the focused scratchpad window.
|
||||||
|
# # If there are multiple scratchpad windows, this command cycles through them.
|
||||||
|
# bindsym $mod+minus scratchpad show
|
||||||
|
# #
|
||||||
|
# # Resizing containers:
|
||||||
|
# #
|
||||||
|
# mode "resize" {
|
||||||
|
# # left will shrink the containers width
|
||||||
|
# # right will grow the containers width
|
||||||
|
# # up will shrink the containers height
|
||||||
|
# # down will grow the containers height
|
||||||
|
# bindsym $left resize shrink width 10px
|
||||||
|
# bindsym $down resize grow height 10px
|
||||||
|
# bindsym $up resize shrink height 10px
|
||||||
|
# bindsym $right resize grow width 10px
|
||||||
|
|
||||||
|
# # Ditto, with arrow keys
|
||||||
|
# bindsym Left resize shrink width 10px
|
||||||
|
# bindsym Down resize grow height 10px
|
||||||
|
# bindsym Up resize shrink height 10px
|
||||||
|
# bindsym Right resize grow width 10px
|
||||||
|
|
||||||
|
# # Return to default mode
|
||||||
|
# bindsym Return mode "default"
|
||||||
|
# bindsym Escape mode "default"
|
||||||
|
# }
|
||||||
|
|
||||||
|
# #
|
||||||
|
# # Utilities:
|
||||||
|
# #
|
||||||
|
# # Special keys to adjust volume via PulseAudio
|
||||||
|
# bindsym --locked XF86AudioMute exec pactl set-sink-mute \@DEFAULT_SINK@ toggle
|
||||||
|
# bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume \@DEFAULT_SINK@ -5%
|
||||||
|
# bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume \@DEFAULT_SINK@ +5%
|
||||||
|
# bindsym --locked XF86AudioMicMute exec pactl set-source-mute \@DEFAULT_SOURCE@ toggle
|
||||||
|
# # Special keys to adjust brightness via brightnessctl
|
||||||
|
# bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%-
|
||||||
|
# bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+
|
||||||
|
# # Special key to take a screenshot with grim
|
||||||
|
# bindsym Print exec grim
|
||||||
|
|
||||||
|
#
|
||||||
|
# Status Bar:
|
||||||
|
#
|
||||||
|
# Read `man 5 sway-bar` for more information about this section.
|
||||||
|
|
||||||
|
bars = [
|
||||||
|
{
|
||||||
|
command = "waybar";
|
||||||
|
position = "top";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
username = "tyler";
|
username = "tyler";
|
||||||
homeDirectory = "/home/tyler";
|
homeDirectory = "/home/tyler";
|
||||||
|
|
|
||||||
|
|
@ -73,6 +73,8 @@
|
||||||
# Enable CUPS to print documents.
|
# Enable CUPS to print documents.
|
||||||
services.printing.enable = true;
|
services.printing.enable = true;
|
||||||
|
|
||||||
|
services.fprintd.enable = true;
|
||||||
|
|
||||||
# Enable sound with pipewire.
|
# Enable sound with pipewire.
|
||||||
hardware.pulseaudio.enable = false;
|
hardware.pulseaudio.enable = false;
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
|
|
@ -89,6 +91,8 @@
|
||||||
#media-session.enable = true;
|
#media-session.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
|
||||||
# Enable touchpad support (enabled default in most desktopManager).
|
# Enable touchpad support (enabled default in most desktopManager).
|
||||||
# services.xserver.libinput.enable = true;
|
# services.xserver.libinput.enable = true;
|
||||||
|
|
||||||
|
|
@ -100,13 +104,22 @@
|
||||||
shell = pkgs.fish;
|
shell = pkgs.fish;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Install firefox.
|
environment.systemPackages = with pkgs; [
|
||||||
programs.firefox.enable = true;
|
sqlite
|
||||||
|
|
||||||
environment.systemPackages = [
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
fonts.packages = with pkgs; [
|
||||||
|
nerdfonts
|
||||||
|
];
|
||||||
|
|
||||||
|
# Install firefox.
|
||||||
|
programs.firefox.enable = true;
|
||||||
programs.fish.enable = true;
|
programs.fish.enable = true;
|
||||||
|
programs.sway = {
|
||||||
|
enable = true;
|
||||||
|
# package = null;
|
||||||
|
wrapperFeatures.gtk = true;
|
||||||
|
};
|
||||||
|
|
||||||
# Some programs need SUID wrappers, can be configured further or are
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
# started in user sessions.
|
# started in user sessions.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue