mirror of
https://github.com/TheWanderingCrow/CrOS.git
synced 2026-01-10 01:24:05 -05:00
Dankify linux
This commit is contained in:
parent
f3cb7d5611
commit
d3622881ea
10 changed files with 189 additions and 386 deletions
67
flake.lock
generated
67
flake.lock
generated
|
|
@ -37,6 +37,27 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"dgop": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"dms",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1762835999,
|
||||||
|
"narHash": "sha256-UykYGrGFOFTmDpKTLNxj1wvd1gbDG4TkqLNSbV0TYwk=",
|
||||||
|
"owner": "AvengeMedia",
|
||||||
|
"repo": "dgop",
|
||||||
|
"rev": "799301991cd5dcea9b64245f9d500dcc76615653",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "AvengeMedia",
|
||||||
|
"repo": "dgop",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"disko": {
|
"disko": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
@ -57,6 +78,29 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"dms": {
|
||||||
|
"inputs": {
|
||||||
|
"dgop": "dgop",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"quickshell": "quickshell"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1765552734,
|
||||||
|
"narHash": "sha256-rWjWYu5rs3ZOJ4YJpvIscBZSYu74thJHc0VYyYKJTUc=",
|
||||||
|
"owner": "AvengeMedia",
|
||||||
|
"repo": "DankMaterialShell",
|
||||||
|
"rev": "7fb358bada0d3a229ec5ee6aaad0f9b64f367331",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "AvengeMedia",
|
||||||
|
"ref": "stable",
|
||||||
|
"repo": "DankMaterialShell",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
|
|
@ -501,11 +545,34 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"quickshell": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"dms",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1764663772,
|
||||||
|
"narHash": "sha256-sHqLmm0wAt3PC4vczJeBozI1/f4rv9yp3IjkClHDXDs=",
|
||||||
|
"ref": "refs/heads/master",
|
||||||
|
"rev": "26531fc46ef17e9365b03770edd3fb9206fcb460",
|
||||||
|
"revCount": 713,
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://git.outfoxxed.me/quickshell/quickshell"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"rev": "26531fc46ef17e9365b03770edd3fb9206fcb460",
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://git.outfoxxed.me/quickshell/quickshell"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"actualbudget-report": "actualbudget-report",
|
"actualbudget-report": "actualbudget-report",
|
||||||
"deferred-apps": "deferred-apps",
|
"deferred-apps": "deferred-apps",
|
||||||
"disko": "disko",
|
"disko": "disko",
|
||||||
|
"dms": "dms",
|
||||||
"hardware": "hardware",
|
"hardware": "hardware",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"iamb-flake": "iamb-flake",
|
"iamb-flake": "iamb-flake",
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
imports = [
|
imports = [
|
||||||
common/core
|
common/core
|
||||||
common/optional/desktops/sway
|
common/optional/desktops/sway
|
||||||
common/optional/browsers/firefox.nix
|
common/optional/browsers
|
||||||
common/optional/comms
|
common/optional/comms
|
||||||
common/optional/media
|
common/optional/media
|
||||||
common/optional/gaming
|
common/optional/gaming
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
imports = [
|
imports = [
|
||||||
common/core
|
common/core
|
||||||
common/optional/desktops/sway
|
common/optional/desktops/sway
|
||||||
common/optional/browsers/firefox.nix
|
common/optional/browsers
|
||||||
common/optional/comms
|
common/optional/comms
|
||||||
common/optional/media
|
common/optional/media
|
||||||
common/optional/gaming
|
common/optional/gaming
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,7 @@ in
|
||||||
./git.nix
|
./git.nix
|
||||||
./nushell.nix
|
./nushell.nix
|
||||||
./starship.nix
|
./starship.nix
|
||||||
|
./terminal.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.deferredApps = {
|
programs.deferredApps = {
|
||||||
|
|
|
||||||
10
home/crow/common/core/terminal.nix
Normal file
10
home/crow/common/core/terminal.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
programs.foot = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
main = {
|
||||||
|
include = "/home/crow/.config/foot/dank-colors.ini";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
programs.chromium = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.ungoogled-chromium;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -22,6 +22,7 @@
|
||||||
};
|
};
|
||||||
OfferToSaveLogins = false;
|
OfferToSaveLogins = false;
|
||||||
PasswordManagerEnabled = false;
|
PasswordManagerEnabled = false;
|
||||||
|
# You can find extension settings by installing the extension in firefox and then going to about:debugging#/runtime/this-firefox to get the extension ID
|
||||||
ExtensionSettings = {
|
ExtensionSettings = {
|
||||||
# Bitwarden
|
# Bitwarden
|
||||||
"{446900e4-71c2-419f-a6a7-df9c091e268b}" = {
|
"{446900e4-71c2-419f-a6a7-df9c091e268b}" = {
|
||||||
|
|
@ -51,9 +52,9 @@
|
||||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/sponsorBlocker@ajay.app/latest.xpl";
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/sponsorBlocker@ajay.app/latest.xpl";
|
||||||
default_area = "menupanel";
|
default_area = "menupanel";
|
||||||
};
|
};
|
||||||
"extension@tabliss.io" = {
|
"pywalfox@frewacom.org" = {
|
||||||
installation_mode = "force_installed";
|
installation_mode = "force_installed";
|
||||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/extension@tabliss.io/latest.xpl";
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ pywalfox@frewacom.org/latest.xpl";
|
||||||
default_area = "menupanel";
|
default_area = "menupanel";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -62,14 +63,21 @@
|
||||||
|
|
||||||
home.packages = builtins.attrValues {
|
home.packages = builtins.attrValues {
|
||||||
inherit (pkgs)
|
inherit (pkgs)
|
||||||
mullvad-browser
|
pywalfox-native
|
||||||
;
|
;
|
||||||
};
|
};
|
||||||
|
|
||||||
home.file.".librewolf/custom/tabliss.json" = {
|
systemd.user.tmpfiles.rules = [
|
||||||
|
"L+ /home/crow/.cache/wal/dank-pywalfox.json - - - - /home/crow/.cache/wal/colors.json"
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.deferredApps = {
|
||||||
enable = true;
|
enable = true;
|
||||||
text = ''
|
packages = builtins.attrValues {
|
||||||
{"data/default-unsplash":{"by":"official","collections":"","featured":false,"paused":false,"search":"tech","topics":"qPYsDzvJOYc","timeout":900},"widget/default-greeting":null,"data/default-time":{"mode":"digital","hour12":false,"showDate":true,"showMinutes":true,"showSeconds":true,"showDayPeriod":true,"timeZone":null},"data/74u_bPXyI_VQ":{"category":"developerexcuses"},"widget/V0OGit2zzORD":null,"widget/default-time":{"id":"default-time","key":"widget/time","order":0,"display":{"position":"middleCentre"}},"widget/74u_bPXyI_VQ":{"id":"74u_bPXyI_VQ","key":"widget/quote","order":2,"display":{"position":"middleCentre"}},"focus":false,"widget/h51N3y5Q5Y5e":{"id":"h51N3y5Q5Y5e","key":"widget/workHours","order":3,"display":{"position":"middleCentre"}},"widget/05GPTS-DklPw":null,"background":{"id":"default-unsplash","key":"background/unsplash","display":{"luminosity":-0.2,"blur":0}},"locale":"en","timeZone":null,"version":3}
|
inherit (pkgs)
|
||||||
'';
|
mullvad-browser
|
||||||
|
ungoogled-chromium
|
||||||
|
;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
inputs,
|
||||||
lib,
|
lib,
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
|
|
@ -11,7 +12,7 @@ let
|
||||||
if m.enabled then
|
if m.enabled then
|
||||||
lib.strings.concatStringsSep "\n" [
|
lib.strings.concatStringsSep "\n" [
|
||||||
"output ${m.name} mode ${toString m.width}x${toString m.height}@${toString m.refreshRate}Hz pos ${toString m.x} ${toString m.y} transform ${toString m.transform}"
|
"output ${m.name} mode ${toString m.width}x${toString m.height}@${toString m.refreshRate}Hz pos ${toString m.x} ${toString m.y} transform ${toString m.transform}"
|
||||||
"exec swww img -o ${m.name} ${m.background}"
|
"exec dms ipc call wallpaper setFor ${m.name} ${m.background}"
|
||||||
]
|
]
|
||||||
else
|
else
|
||||||
"output ${m.name} disable"
|
"output ${m.name} disable"
|
||||||
|
|
@ -19,31 +20,19 @@ let
|
||||||
config.monitors;
|
config.monitors;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./waybar.nix
|
../dank
|
||||||
../swww
|
|
||||||
];
|
];
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
foot
|
foot
|
||||||
wofi
|
|
||||||
swaynotificationcenter
|
|
||||||
polkit_gnome
|
polkit_gnome
|
||||||
swayidle
|
swayidle
|
||||||
sway-audio-idle-inhibit
|
sway-audio-idle-inhibit
|
||||||
swaylock-effects
|
swaylock-effects
|
||||||
sway-contrib.grimshot
|
|
||||||
waybar
|
|
||||||
wl-clipboard
|
|
||||||
hyprlock
|
hyprlock
|
||||||
grim
|
|
||||||
slurp
|
|
||||||
swappy
|
|
||||||
wljoywake
|
wljoywake
|
||||||
pulseaudio
|
|
||||||
playerctl
|
|
||||||
brightnessctl
|
|
||||||
pavucontrol
|
|
||||||
];
|
];
|
||||||
|
|
||||||
wayland.windowManager.sway = {
|
wayland.windowManager.sway = {
|
||||||
|
|
|
||||||
|
|
@ -1,90 +1,27 @@
|
||||||
# Assign specific workspaces to specific outputs
|
###########
|
||||||
|
# General #
|
||||||
|
###########
|
||||||
|
|
||||||
|
set $mod Mod4
|
||||||
|
set $term foot
|
||||||
|
|
||||||
|
exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 # FIXME: Look at dank polkit
|
||||||
|
|
||||||
|
#######
|
||||||
|
# DMS #
|
||||||
|
#######
|
||||||
|
|
||||||
|
exec dms run
|
||||||
|
exec wl-paste --watch cliphist store
|
||||||
|
|
||||||
|
##############
|
||||||
|
# Workspaces #
|
||||||
|
##############
|
||||||
workspace 1 output HDMI-A-1 # Firefox
|
workspace 1 output HDMI-A-1 # Firefox
|
||||||
workspace 2 output HDMI-A-1 # Comms
|
workspace 2 output HDMI-A-1 # Comms
|
||||||
workspace 3 output DP-1 # Terminal
|
workspace 3 output DP-1 # Terminal
|
||||||
workspace 5 output DP-1 # Mudlet
|
workspace 5 output DP-1 # Mudlet
|
||||||
|
|
||||||
# Assign wacom tablet to primary monitor
|
|
||||||
input type:tablet_tool map_to_output DP-1
|
|
||||||
input type:tablet_tool map_to_output eDP-1
|
|
||||||
|
|
||||||
set $mod Mod4
|
|
||||||
###########################
|
|
||||||
### Systemd Integration ###
|
|
||||||
###########################
|
|
||||||
|
|
||||||
exec systemctl --user import-environment XDG_SESSION_TYPE XDG_CURRENT_DESKTOP WAYLAND_DISPLAY
|
|
||||||
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
|
|
||||||
|
|
||||||
|
|
||||||
###################
|
|
||||||
### MY PROGRAMS ###
|
|
||||||
###################
|
|
||||||
|
|
||||||
set $term foot
|
|
||||||
set $menu wofi --show run | xargs swaymsg exec --
|
|
||||||
|
|
||||||
exec waybar
|
|
||||||
exec swaync
|
|
||||||
exec udiskie
|
|
||||||
exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
|
||||||
|
|
||||||
###################
|
|
||||||
### IDLE CONFIG ###
|
|
||||||
###################
|
|
||||||
|
|
||||||
exec swayidle -w timeout 300 'hyprlock'
|
|
||||||
exec wljoywake # prevent screen sleep on joystick input
|
|
||||||
|
|
||||||
set $lock 'hyprlock'
|
|
||||||
bindswitch --reload --locked lid:on exec $lock
|
|
||||||
for_window [app_id="firefox"] inhibit_idle fullscreen
|
|
||||||
bindsym $mod+Shift+z exec $lock
|
|
||||||
|
|
||||||
### 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.
|
|
||||||
|
|
||||||
###################
|
|
||||||
### KEYBINDINGS ###
|
|
||||||
###################
|
|
||||||
|
|
||||||
bindsym $mod+Return exec $term
|
|
||||||
bindsym $mod+Shift+q kill
|
|
||||||
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'
|
|
||||||
bindsym $mod+Shift+n exec networkmanager_dmenu
|
|
||||||
bindsym $mod+n exec swaync-client -t -sw
|
|
||||||
bindsym $mod+d exec $menu
|
|
||||||
bindsym $mod+Shift+d exec UDISKIE_DMENU_LAUNCHER="wofi" udiskie-dmenu -matching regex -dmenu -i -no-custom -multi-select
|
|
||||||
# Reload the configuration file
|
|
||||||
bindsym $mod+Shift+c reload
|
|
||||||
|
|
||||||
floating_modifier $mod normal
|
|
||||||
|
|
||||||
bindsym $mod+Left focus left
|
|
||||||
bindsym $mod+Down focus down
|
|
||||||
bindsym $mod+Up focus up
|
|
||||||
bindsym $mod+Right focus right
|
|
||||||
|
|
||||||
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 ###
|
|
||||||
##################
|
|
||||||
|
|
||||||
bindsym $mod+1 workspace number 1
|
bindsym $mod+1 workspace number 1
|
||||||
bindsym $mod+2 workspace number 2
|
bindsym $mod+2 workspace number 2
|
||||||
bindsym $mod+3 workspace number 3
|
bindsym $mod+3 workspace number 3
|
||||||
|
|
@ -106,46 +43,71 @@ bindsym $mod+Shift+7 move container to workspace number 7
|
||||||
bindsym $mod+Shift+8 move container to workspace number 8
|
bindsym $mod+Shift+8 move container to workspace number 8
|
||||||
bindsym $mod+Shift+9 move container to workspace number 9
|
bindsym $mod+Shift+9 move container to workspace number 9
|
||||||
bindsym $mod+Shift+0 move container to workspace number 10
|
bindsym $mod+Shift+0 move container to workspace number 10
|
||||||
#
|
|
||||||
# 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
|
# Assign wacom tablet to primary monitor
|
||||||
bindsym $mod+s layout stacking
|
input type:tablet_tool map_to_output DP-1
|
||||||
bindsym $mod+w layout tabbed
|
input type:tablet_tool map_to_output eDP-1
|
||||||
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
|
# Systemd Integration #
|
||||||
|
#######################
|
||||||
|
|
||||||
# Swap focus between the tiling area and the floating area
|
exec systemctl --user import-environment XDG_SESSION_TYPE XDG_CURRENT_DESKTOP WAYLAND_DISPLAY
|
||||||
bindsym $mod+space focus mode_toggle
|
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
|
||||||
|
|
||||||
# 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
|
# IDLE CONFIG # # FIXME: Switch to DankGreeter
|
||||||
|
###############
|
||||||
|
|
||||||
|
exec swayidle -w timeout 300 'hyprlock'
|
||||||
|
exec wljoywake # prevent screen sleep on joystick input
|
||||||
|
|
||||||
|
set $lock 'hyprlock'
|
||||||
|
bindswitch --reload --locked lid:on exec $lock
|
||||||
|
for_window [app_id="firefox"] inhibit_idle fullscreen
|
||||||
|
bindsym $mod+Shift+z exec $lock
|
||||||
|
|
||||||
|
###############
|
||||||
|
# KEYBINDINGS #
|
||||||
|
###############
|
||||||
|
|
||||||
|
bindsym $mod+Return exec $term
|
||||||
|
bindsym $mod+Shift+q kill
|
||||||
|
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'
|
||||||
|
bindsym $mod+Shift+n exec networkmanager_dmenu
|
||||||
|
bindsym $mod+d exec dms ipc call spotlight toggle
|
||||||
|
bindsym $mod+Shift+c reload # Reload config
|
||||||
|
|
||||||
|
floating_modifier $mod normal
|
||||||
|
|
||||||
|
bindsym $mod+Left focus left
|
||||||
|
bindsym $mod+Down focus down
|
||||||
|
bindsym $mod+Up focus up
|
||||||
|
bindsym $mod+Right focus right
|
||||||
|
|
||||||
|
bindsym $mod+Shift+Left move left
|
||||||
|
bindsym $mod+Shift+Down move down
|
||||||
|
bindsym $mod+Shift+Up move up
|
||||||
|
bindsym $mod+Shift+Right move right
|
||||||
|
|
||||||
|
##########
|
||||||
|
# Layout #
|
||||||
|
##########
|
||||||
|
|
||||||
|
bindsym $mod+b splith
|
||||||
|
bindsym $mod+v splitv
|
||||||
|
bindsym $mod+s layout stacking
|
||||||
|
bindsym $mod+w layout tabbed
|
||||||
|
bindsym $mod+e layout toggle split
|
||||||
|
bindsym $mod+f fullscreen
|
||||||
|
bindsym $mod+Shift+space floating toggle
|
||||||
|
bindsym $mod+space focus mode_toggle
|
||||||
|
bindsym $mod+a focus parent
|
||||||
|
bindsym $mod+Shift+minus move scratchpad
|
||||||
|
bindsym $mod+minus scratchpad show
|
||||||
|
|
||||||
# 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" {
|
mode "resize" {
|
||||||
bindsym Left resize shrink width 10px
|
bindsym Left resize shrink width 10px
|
||||||
bindsym Down resize grow height 10px
|
bindsym Down resize grow height 10px
|
||||||
|
|
@ -158,14 +120,16 @@ mode "resize" {
|
||||||
}
|
}
|
||||||
bindsym $mod+r mode "resize"
|
bindsym $mod+r mode "resize"
|
||||||
|
|
||||||
# Media controls:
|
##################
|
||||||
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
|
# Media controls #
|
||||||
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
|
##################
|
||||||
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
|
bindsym XF86AudioRaiseVolume exec dms ipc call audio increment 5
|
||||||
bindsym XF86AudioMicMute exec pulseaudio-ctl mute-input
|
bindsym XF86AudioLowerVolume exec dms ipc call audio decrement 5
|
||||||
bindsym XF86AudioPlay exec playerctl play-pause
|
bindsym XF86AudioMute exec dms ipc call audio mute
|
||||||
bindsym XF86AudioNext exec playerctl next
|
bindsym XF86AudioMicMute exec dms ipc call audio micmute
|
||||||
bindsym XF86AudioPrev exec playerctl previous
|
bindsym XF86AudioPlay exec dms ipc call mpris playPause
|
||||||
bindsym XF86MonBrightnessUp exec brightnessctl s +5%
|
bindsym XF86AudioNext exec dms ipc call mpris next
|
||||||
bindsym XF86MonBrightnessDown exec brightnessctl s 5%-
|
bindsym XF86AudioPrev exec dms ipc call mpris previous
|
||||||
bindsym Print exec grim -g "$(slurp)" - | swappy -f -
|
bindsym XF86MonBrightnessUp exec dms ipc call brightness increment 5 ""
|
||||||
|
bindsym XF86MonBrightnessDown exec dms ipc call brightness decrement 5 ""
|
||||||
|
bindsym Print exec dms screenshot
|
||||||
|
|
|
||||||
|
|
@ -1,230 +0,0 @@
|
||||||
{osConfig, ...}: let
|
|
||||||
# screenshots/og_waybar.jpg
|
|
||||||
og_waybar = {
|
|
||||||
jsonc = {
|
|
||||||
mainBar = {
|
|
||||||
layer = "top";
|
|
||||||
position = "top";
|
|
||||||
height = 30;
|
|
||||||
spacing = 4;
|
|
||||||
mode = "dock";
|
|
||||||
margin = "10";
|
|
||||||
modules-left = ["sway/workspaces"];
|
|
||||||
modules-center = ["clock"];
|
|
||||||
modules-right = ["network" "battery" "backlight" "pulseaudio" "tray"];
|
|
||||||
tray = {
|
|
||||||
spacing = 10;
|
|
||||||
};
|
|
||||||
"sway/workspaces" = {
|
|
||||||
format = "{icon}";
|
|
||||||
format-icons = {
|
|
||||||
"1" = "";
|
|
||||||
"2" = "";
|
|
||||||
"3" = "";
|
|
||||||
"4" = "";
|
|
||||||
"5" = "";
|
|
||||||
"urgent" = "";
|
|
||||||
"active" = "";
|
|
||||||
"default" = "";
|
|
||||||
};
|
|
||||||
sort-by-number = true;
|
|
||||||
persistent-workspaces = {
|
|
||||||
"1" = ["HDMI-A-1"];
|
|
||||||
"2" = ["HDMI-A-1"];
|
|
||||||
"3" = ["DP-1"];
|
|
||||||
"4" = ["HDMI-A-1"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
clock = {
|
|
||||||
tooltip-format = "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
|
|
||||||
format-alt = "{:%m-%d-%Y}";
|
|
||||||
};
|
|
||||||
network = {
|
|
||||||
format-wifi = "{essid} ({signalStrength}%) ";
|
|
||||||
format-ethernet = "{ipaddr}/{cidr} ";
|
|
||||||
tooltip-format = "{ifname} via {gwaddr} ";
|
|
||||||
format-linked = "{ifname} (No IP) ";
|
|
||||||
format-disconnected = "Disconnected ⚠";
|
|
||||||
format-alt = "{ifname}: {ipaddr}/{cidr}";
|
|
||||||
};
|
|
||||||
battery = {
|
|
||||||
states = {
|
|
||||||
warning = 30;
|
|
||||||
critical = 15;
|
|
||||||
};
|
|
||||||
format = "{capacity}% {icon}";
|
|
||||||
format-full = "{capacity}% {icon}";
|
|
||||||
format-charging = "{capacity}% ";
|
|
||||||
format-plugged = "{capacity}% ";
|
|
||||||
format-alt = "{time} {icon}";
|
|
||||||
format-icons = ["" "" "" "" ""];
|
|
||||||
interval = 30;
|
|
||||||
};
|
|
||||||
backlight = {
|
|
||||||
format = "{percent}% {icon}";
|
|
||||||
format-icons = ["" "" ""];
|
|
||||||
};
|
|
||||||
pulseaudio = {
|
|
||||||
format = "{volume}% {icon} {format_source}";
|
|
||||||
format-bluetooth = "{volume}% {icon} {format_source}";
|
|
||||||
format-bluetooth-muted = " {icon} {format_source}";
|
|
||||||
format-muted = " {format_source}";
|
|
||||||
format-source = "{volume}% ";
|
|
||||||
format-source-muted = "";
|
|
||||||
format-icons = {
|
|
||||||
headphone = "";
|
|
||||||
hands-free = "";
|
|
||||||
headset = "";
|
|
||||||
phone = "";
|
|
||||||
portable = "";
|
|
||||||
car = "";
|
|
||||||
default = ["" "" ""];
|
|
||||||
};
|
|
||||||
on-click = "pavucontrol";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
style = ''
|
|
||||||
@define-color fg #AAB775;
|
|
||||||
@define-color bg #060617;
|
|
||||||
@define-color disabled #a5a5a5;
|
|
||||||
@define-color alert #f53c3c;
|
|
||||||
@define-color activegreen #8fb666;
|
|
||||||
|
|
||||||
* {
|
|
||||||
min-height: 0;
|
|
||||||
font-family: "JetBrainsMono Nerd Font", "Hack Nerd Font", "Font Awesome 6 Free Regular", "Font Awesome 6 Free Solid", "Font Awesome 6 Brands";
|
|
||||||
font-size: 14px;
|
|
||||||
}
|
|
||||||
|
|
||||||
window#waybar {
|
|
||||||
color: @fg;
|
|
||||||
background: @bg;
|
|
||||||
transition-property: background-color;
|
|
||||||
border-radius: 25px;
|
|
||||||
transition-duration: 0.5s;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
window#waybar.empty {
|
|
||||||
opacity: 0.3;
|
|
||||||
}
|
|
||||||
|
|
||||||
button {
|
|
||||||
/* Use box-shadow instead of border so the text isn't offset */
|
|
||||||
box-shadow: inset 0 -3px transparent;
|
|
||||||
/* Avoid rounded borders under each button name */
|
|
||||||
border: none;
|
|
||||||
border-radius: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
|
||||||
button:hover {
|
|
||||||
background: inherit;
|
|
||||||
box-shadow: inset 0 -3px transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button {
|
|
||||||
color: @fg;
|
|
||||||
/* padding : 0px 5px; */
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.urgent {
|
|
||||||
color: @alert;
|
|
||||||
}
|
|
||||||
#workspaces button.empty {
|
|
||||||
color: @disabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.active {
|
|
||||||
border-bottom: 2px solid #DCAA9B;
|
|
||||||
border-radius: 0;
|
|
||||||
margin-top: 2px;
|
|
||||||
color: #DCAA9B;
|
|
||||||
transition: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* If workspaces is the leftmost module, omit left margin */
|
|
||||||
.modules-left > widget:first-child > #workspaces {
|
|
||||||
margin-left: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* If workspaces is the rightmost module, omit right margin */
|
|
||||||
.modules-right > widget:last-child > #workspaces {
|
|
||||||
margin-right: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#clock,
|
|
||||||
#battery,
|
|
||||||
#cpu,
|
|
||||||
#memory,
|
|
||||||
#disk,
|
|
||||||
#temperature,
|
|
||||||
#language,
|
|
||||||
#backlight,
|
|
||||||
#backlight-slider,
|
|
||||||
#network,
|
|
||||||
#pulseaudio,
|
|
||||||
#wireplumber,
|
|
||||||
#custom-media,
|
|
||||||
#taskbar,
|
|
||||||
#tray,
|
|
||||||
#tray menu,
|
|
||||||
#tray > .needs-attention,
|
|
||||||
#tray > .passive,
|
|
||||||
#tray > .active,
|
|
||||||
#mode,
|
|
||||||
#idle_inhibitor,
|
|
||||||
#scratchpad,
|
|
||||||
#custom-power,
|
|
||||||
#window,
|
|
||||||
#mpd {
|
|
||||||
padding: 0px 5px;
|
|
||||||
padding-right: 10px;
|
|
||||||
margin: 3px 3px;
|
|
||||||
color: @fg;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-power {
|
|
||||||
color: @fg;
|
|
||||||
padding-left: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-separator {
|
|
||||||
color: @disabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
#network.disconnected,
|
|
||||||
#pulseaudio.muted,
|
|
||||||
#wireplumber.muted {
|
|
||||||
color: @alert;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.charging,
|
|
||||||
#battery.plugged {
|
|
||||||
color: #26a65b;
|
|
||||||
}
|
|
||||||
|
|
||||||
label:focus {
|
|
||||||
background-color: #333333;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.critical:not(.charging) {
|
|
||||||
background-color: @alert;
|
|
||||||
color: @fg;
|
|
||||||
animation-name: blink;
|
|
||||||
animation-duration: 0.5s;
|
|
||||||
animation-timing-function: linear;
|
|
||||||
animation-iteration-count: infinite;
|
|
||||||
animation-direction: alternate;
|
|
||||||
}
|
|
||||||
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
in {
|
|
||||||
programs.waybar = {
|
|
||||||
enable = true;
|
|
||||||
settings = og_waybar.jsonc;
|
|
||||||
style = og_waybar.style;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue