Finalized initial wayland configuration using Hyprland and Bemenu. Found replacment tools for ones used with bspwm and dmenu.
This commit is contained in:
parent
f305aad88b
commit
9e9165cb4e
@ -1,15 +0,0 @@
|
||||
error: builder for '/nix/store/kdnn9827xdjh7zwfcahajjzh8qpqlrn4-dwl-0.4.drv' failed with exit code 2;
|
||||
last 10 log lines:
|
||||
> dwl.c:407:44: error: 'tags' undeclared here (not in a function); did you mean 'tag'?
|
||||
> 407 | struct NumTags { char limitexceeded[LENGTH(tags) > 31 ? -1 : 1]; };
|
||||
> | ^~~~
|
||||
> dwl.c:68:41: note: in definition of macro 'LENGTH'
|
||||
> 68 | #define LENGTH(X) (sizeof X / sizeof X[0])
|
||||
> | ^
|
||||
> config.h:21:12: warning: 'log_level' defined but not used [8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-variable-Wunused-variable8;;]
|
||||
> 21 | static int log_level = WLR_ERROR;
|
||||
> | ^~~~~~~~~
|
||||
> make: *** [Makefile:60: dwl.o] Error 1
|
||||
For full logs, run 'nix log /nix/store/kdnn9827xdjh7zwfcahajjzh8qpqlrn4-dwl-0.4.drv'.
|
||||
error: 1 dependencies of derivation '/nix/store/lk9g5kw1yh15p2p5iw4a0wps6jq560in-system-path.drv' failed to build
|
||||
error: 1 dependencies of derivation '/nix/store/id6523vap8cxfd7ds9yi9h49b08avwxf-nixos-system-buckwheat-24.05.20231219.54aac08.drv' failed to build
|
@ -1,4 +1,8 @@
|
||||
[[ -f ~/.bashrc ]] && . ~/.bashrc
|
||||
#if [ -z "$DISPLAY" ] && [ "$XDG_VTNR" -eq 1 ]; then
|
||||
# exec startx
|
||||
#fi
|
||||
tmux has-session -t scratch 2>/dev/null || tmux new-session -d -s scratch
|
||||
tmux has-session -t music 2>/dev/null || tmux new-session -d -s music
|
||||
tmux has-session -t chat 2>/dev/null || tmux new-session -d -s chat
|
||||
tmux has-session -t dev 2>/dev/null || tmux new-session -d -s dev
|
||||
if [ -z "$DISPLAY" ] && [ "$XDG_VTNR" -eq 1 ]; then
|
||||
exec Hyprland
|
||||
fi
|
||||
|
@ -1,8 +1,23 @@
|
||||
# .bashrc
|
||||
|
||||
# Source global definitions
|
||||
if [ -f /etc/bashrc ]; then
|
||||
. /etc/bashrc
|
||||
fi
|
||||
|
||||
set -o vi
|
||||
unset HISTFILE
|
||||
|
||||
# Functions
|
||||
function search() {
|
||||
surfraw $(surfraw -elvi | fzf | awk '{print $1;}')
|
||||
}
|
||||
|
||||
function mkcd {
|
||||
mkdir -p $1
|
||||
cd $1
|
||||
}
|
||||
|
||||
function mkplatypus() {
|
||||
cd $(mktemp -d)
|
||||
touch "platypus.sh"
|
||||
@ -11,14 +26,7 @@ function mkplatypus() {
|
||||
chmod +x "platypus.sh"
|
||||
vim "+normal GA" "platypus.sh"
|
||||
}
|
||||
# Functions
|
||||
function search() {
|
||||
surfraw $(surfraw -elvi | fzf | awk '{print $1;}')
|
||||
}
|
||||
function mkcd {
|
||||
mkdir -p $1
|
||||
cd $1
|
||||
}
|
||||
|
||||
# fe [FUZZY PATTERN] - Open the selected file with the default editor
|
||||
# - Bypass fuzzy finder if there's only one match (--select-1)
|
||||
# - Exit if there's no match (--exit-0)
|
||||
@ -28,6 +36,7 @@ function fe() {
|
||||
files=$(fzf --query="$1" --multi --select-1 --exit-0)
|
||||
[ -n "$files" ] && ${EDITOR} "${files}"
|
||||
}
|
||||
|
||||
function _track() {
|
||||
TRACK_DIR=${TRACK_DIR:-.}
|
||||
local lis
|
||||
@ -36,6 +45,7 @@ function _track() {
|
||||
cur=${COMP_WORDS[COMP_CWORD]}
|
||||
COMPREPLY=( $(compgen -W "$lis" -- "$cur") )
|
||||
}
|
||||
|
||||
function track() {
|
||||
TRACK_DIR=${TRACK_DIR:-.}
|
||||
if [ $# -eq 0 ]; then
|
||||
@ -102,10 +112,24 @@ function track() {
|
||||
}
|
||||
complete -F _track track
|
||||
|
||||
# Source global definitions
|
||||
if [ -f /etc/bashrc ]; then
|
||||
. /etc/bashrc
|
||||
fi
|
||||
|
||||
# Environmental Variables
|
||||
# Uncomment the following line if you don't like systemctl's auto-paging feature:
|
||||
# export SYSTEMD_PAGER=
|
||||
export SYSTEMD_PAGER=
|
||||
export BEMENU_OPTS="--tb '#6272a4'\
|
||||
--tf '#f8f8f2'\
|
||||
--fb '#282a36'\
|
||||
--ff '#f8f8f2'\
|
||||
--nb '#282a36'\
|
||||
--nf '#6272a4'\
|
||||
--hb '#44475a'\
|
||||
--hf '#50fa7b'\
|
||||
--sb '#44475a'\
|
||||
--sf '#50fa7b'\
|
||||
--scb '#282a36'\
|
||||
--scf '#ff79c6'\
|
||||
--fn 'Comic Mono 12'\
|
||||
--hp '10'\
|
||||
--binding 'vim'\
|
||||
--vim-esc-exits\
|
||||
--ignorecase\
|
||||
--no-overlap"
|
||||
|
23
home-manager/dots/foot/foot.ini
Normal file
23
home-manager/dots/foot/foot.ini
Normal file
@ -0,0 +1,23 @@
|
||||
font=Comic Mono:size=11
|
||||
[colors]
|
||||
alpha=1.0
|
||||
foreground=f8f8f2
|
||||
background=282a36
|
||||
## Normal/regular colors (color palette 0-7)
|
||||
regular0=000000
|
||||
regular1=ff5555
|
||||
regular2=50fa7b
|
||||
regular3=f1fa8c
|
||||
regular4=bd93f9
|
||||
regular5=ff79c6
|
||||
regular6=8be9fd
|
||||
regular7=bfbfbf
|
||||
## Bright colors (color palette 8-15)
|
||||
bright0=4d4d4d
|
||||
bright1=ff6367
|
||||
bright2=5af78e
|
||||
bright3=f4f99d
|
||||
bright4=caa9fa
|
||||
bright5=ff92d0
|
||||
bright6=9aedfe
|
||||
bright7=e63636
|
201
home-manager/dots/hypr/hyprland.conf
Normal file
201
home-manager/dots/hypr/hyprland.conf
Normal file
@ -0,0 +1,201 @@
|
||||
# Variables
|
||||
$TERMINAL = foot
|
||||
$MENU = iiwmenu
|
||||
$FILEMANAGER = foot -e ranger
|
||||
$MOD = SUPER
|
||||
# Some default env vars.
|
||||
env = XCURSOR_SIZE,24
|
||||
|
||||
# Auto-start
|
||||
# exec-once = waybar & hyprpaper & firefox
|
||||
exec-once = nm-applet
|
||||
exec-once = mullvad-gui
|
||||
exec-once = wl-paste --watch cliphist store
|
||||
exec-once = dunst
|
||||
exec-once = swww init
|
||||
exec-once = swww img $HOME/Pictures/wallpapers/bliss-night.png --transition-type simple
|
||||
|
||||
# Monitors
|
||||
monitor=DP-1,2560x1440@164.99,0x0,1
|
||||
monitor=DP-2,2560x1440@164.99,2560x0,1
|
||||
|
||||
# Workspaces
|
||||
workspace=1,monitor:DP-1
|
||||
workspace=2,monitor:DP-1
|
||||
workspace=3,monitor:DP-1
|
||||
workspace=4,monitor:DP-1
|
||||
workspace=5,monitor:DP-1
|
||||
workspace=6,monitor:DP-2
|
||||
workspace=7,monitor:DP-2
|
||||
workspace=8,monitor:DP-2
|
||||
workspace=9,monitor:DP-2
|
||||
workspace=0,monitor:DP-2
|
||||
|
||||
# Source a file (multi-file configs)
|
||||
# source = ~/.config/hypr/myColors.conf
|
||||
|
||||
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
|
||||
input {
|
||||
kb_layout = us
|
||||
kb_variant =
|
||||
kb_model =
|
||||
kb_options =
|
||||
kb_rules =
|
||||
follow_mouse = 1
|
||||
touchpad {
|
||||
natural_scroll = no
|
||||
}
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
general {
|
||||
gaps_in = 10
|
||||
gaps_out = 20
|
||||
border_size = 2
|
||||
col.active_border = rgba(bd93f9ff) rgba(bd93f9ff) 45deg
|
||||
col.inactive_border = rgba(282a3600)
|
||||
layout = dwindle
|
||||
allow_tearing = false
|
||||
cursor_inactive_timeout = 1
|
||||
}
|
||||
|
||||
decoration {
|
||||
rounding = 10
|
||||
blur {
|
||||
enabled = true
|
||||
size = 3
|
||||
passes = 1
|
||||
}
|
||||
drop_shadow = yes
|
||||
shadow_range = 4
|
||||
shadow_render_power = 3
|
||||
col.shadow = rgba(1a1a1aee)
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
animation = windows, 1, 7, myBezier
|
||||
animation = windowsOut, 1, 7, default, popin 80%
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
|
||||
dwindle {
|
||||
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
preserve_split = yes # you probably want this
|
||||
default_split_ratio = 1.10
|
||||
force_split = 2
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master = false
|
||||
}
|
||||
|
||||
gestures {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
workspace_swipe = off
|
||||
}
|
||||
|
||||
# Example per-device config
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
|
||||
device:epic-mouse-v1 {
|
||||
sensitivity = -0.5
|
||||
}
|
||||
|
||||
# Hotkeys
|
||||
bind = $MOD, Return, exec, $TERMINAL -e iitmux
|
||||
bind = $MOD SHIFT, Return, exec, $TERMINAL
|
||||
bind = $MOD, V, exec, cliphist list | bemenu -p 'Cliphist ' -l 8 | cliphist decode | wl-copy
|
||||
bind = $MOD, Q, killactive,
|
||||
bind = $MOD SHIFT, Q, exit,
|
||||
bind = $MOD, F, togglefloating,
|
||||
bind = , F11, fullscreen
|
||||
bind = $MOD, Z, fullscreen, 1
|
||||
bind = $MOD, Space, exec, $MENU
|
||||
bind = $MOD SHIFT, F, pseudo, # dwindle
|
||||
|
||||
# Focus window
|
||||
bind = $MOD, h, movefocus, l
|
||||
bind = $MOD, j, movefocus, d
|
||||
bind = $MOD, k, movefocus, u
|
||||
bind = $MOD, l, movefocus, r
|
||||
bind = ALT, TAB, cyclenext
|
||||
bind = ALT Shift, TAB, cyclenext, prev
|
||||
|
||||
# Move window
|
||||
bind = $MOD ALT, h, movewindow, l
|
||||
bind = $MOD ALT, j, movewindow, d
|
||||
bind = $MOD ALT, k, movewindow, u
|
||||
bind = $MOD ALT, l, movewindow, r
|
||||
|
||||
# Swap window
|
||||
bind = $MOD CTRL, h, swapwindow, l
|
||||
bind = $MOD CTRL, j, swapwindow, d
|
||||
bind = $MOD CTRL, k, swapwindow, u
|
||||
bind = $MOD CTRL, l, swapwindow, r
|
||||
|
||||
# Focus workspace
|
||||
bind = $MOD, 1, workspace, 1
|
||||
bind = $MOD, 1, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD, 2, workspace, 2
|
||||
bind = $MOD, 2, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD, 3, workspace, 3
|
||||
bind = $MOD, 3, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD, 4, workspace, 4
|
||||
bind = $MOD, 4, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD, 5, workspace, 5
|
||||
bind = $MOD, 5, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD, 6, workspace, 6
|
||||
bind = $MOD, 6, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD, 7, workspace, 7
|
||||
bind = $MOD, 7, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD, 8, workspace, 8
|
||||
bind = $MOD, 8, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD, 9, workspace, 9
|
||||
bind = $MOD, 9, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD, 0, workspace, 10
|
||||
bind = $MOD, 0, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD, TAB, workspace, previous
|
||||
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
bind = $MOD CTRL, 1, movetoworkspace, 1
|
||||
bind = $MOD CTRL, 1, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD CTRL, 2, movetoworkspace, 2
|
||||
bind = $MOD CTRL, 2, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD CTRL, 3, movetoworkspace, 3
|
||||
bind = $MOD CTRL, 3, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD CTRL, 4, movetoworkspace, 4
|
||||
bind = $MOD CTRL, 4, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD CTRL, 5, movetoworkspace, 5
|
||||
bind = $MOD CTRL, 5, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD CTRL, 6, movetoworkspace, 6
|
||||
bind = $MOD CTRL, 6, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD CTRL, 7, movetoworkspace, 7
|
||||
bind = $MOD CTRL, 7, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD CTRL, 8, movetoworkspace, 8
|
||||
bind = $MOD CTRL, 8, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD CTRL, 9, movetoworkspace, 9
|
||||
bind = $MOD CTRL, 9, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
bind = $MOD CTRL, 0, movetoworkspace, 10
|
||||
bind = $MOD CTRL, 0, exec, notify-desktop "$(hyprctl activeworkspace)"
|
||||
|
||||
# Example special workspace (scratchpad)
|
||||
bind = $MOD, Grave, togglespecialworkspace, scratch
|
||||
bind = $MOD SHIFT, Grave, movetoworkspace, special:scratch
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = $MOD, mouse:272, movewindow
|
||||
bindm = $MOD, mouse:273, resizewindow
|
||||
|
||||
# Screenshot
|
||||
bind = $MOD SHIFT, S, exec, grimblast --notify copysave area "$HOME/Pictures/screenshots/scrot-$(date +%Y%m%d%H%M%s).jpg"
|
||||
|
||||
# Example windowrule v1
|
||||
# windowrule = float, ^(kitty)$
|
||||
# Example windowrule v2
|
||||
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
|
||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||
windowrulev2 = nomaximizerequest, class:.* # You'll probably like this.
|
@ -68,6 +68,16 @@
|
||||
};
|
||||
};
|
||||
xdg.configFile = {
|
||||
"hyprland" = {
|
||||
source = ./dots/hypr;
|
||||
target = "hypr";
|
||||
recursive = true;
|
||||
};
|
||||
"foot" = {
|
||||
source = ./dots/foot;
|
||||
target = "foot";
|
||||
recursive = true;
|
||||
};
|
||||
"dunst" = {
|
||||
source = ./dots/dunst;
|
||||
target = "dunst";
|
||||
|
@ -11,6 +11,7 @@
|
||||
gamemode.enable = true;
|
||||
};
|
||||
users.users.${user.name}.packages = with pkgs; [
|
||||
dnd-tools
|
||||
dosbox-staging
|
||||
minecraft
|
||||
];
|
||||
|
@ -103,12 +103,15 @@
|
||||
xsel
|
||||
|
||||
# Packages for Wayland
|
||||
#(dwl.overrideAttrs (oldAttrs: rec {
|
||||
# configFile = writeText "config.def.h" (builtins.readFile ./patches/dwl/config.h);
|
||||
# postPatch = "${oldAttrs.postPatch}\n cp ${configFile} config.def.h";
|
||||
#}))
|
||||
bemenu
|
||||
dwl
|
||||
bemoji
|
||||
cliphist
|
||||
foot
|
||||
grimblast
|
||||
libnotify
|
||||
swww
|
||||
tessen
|
||||
wl-clipboard
|
||||
wtype
|
||||
];
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user