From 6e50e217c3eac6a104c5c53291229f4d77f09512 Mon Sep 17 00:00:00 2001 From: Riyyi Date: Sun, 9 Feb 2025 22:46:46 +0100 Subject: [PATCH] Everywhere: Add Hyprland Wayland config --- .config/Kvantum/kvantum.kvconfig | 2 + .config/Thunar/uca.xml | 9 +- .config/emacs/site-lisp/dot-elpaca.el | 4 +- .config/emacs/site-lisp/dot-org-mode.el | 3 +- .../redshift.conf => gammastep/config.ini} | 8 +- .config/ghostty/config | 10 + .config/ghostty/themes/terminal-sexy | 21 + .config/gtk-2.0/gtkrc | 3 +- .config/gtk-3.0/settings.ini | 1 + .config/hypr/hypridle.conf | 12 + .config/hypr/hyprland.conf | 406 ++++++++++++++++++ .config/hypr/hyprlock.conf | 72 ++++ .config/hypr/hyprpaper.conf | 0 .config/mpv/mpv.conf | 2 +- .config/nvim/lazy-lock.json | 2 +- .config/nwg-look/config | 7 + .config/qt6ct/qt6ct.conf | 4 +- .config/waybar/config.jsonc | 150 +++++++ .config/waybar/power_menu.xml | 33 ++ .config/waybar/style.css | 228 ++++++++++ .../xfconf/xfce-perchannel-xml/thunar.xml | 10 +- .config/xsettingsd/xsettingsd.conf | 9 + .config/zsh/.zlogin | 6 +- .config/zsh/.zprofile | 18 +- .config/zsh/.zshrc | 4 + .icons/default/index.theme | 5 + .local/bin/panel/btc.sh | 7 +- .local/bin/panel/waybar.sh | 7 + .local/bin/printscreen | 15 +- .local/bin/wm/wallpaper.sh | 23 +- README.org | 2 +- etc/resolv.conf | 3 + packages => packages/base | 76 +--- packages/packages | 51 +++ packages/packages-wayland | 32 ++ 35 files changed, 1151 insertions(+), 94 deletions(-) create mode 100644 .config/Kvantum/kvantum.kvconfig rename .config/{redshift/redshift.conf => gammastep/config.ini} (72%) create mode 100644 .config/ghostty/config create mode 100644 .config/ghostty/themes/terminal-sexy create mode 100644 .config/hypr/hypridle.conf create mode 100644 .config/hypr/hyprland.conf create mode 100644 .config/hypr/hyprlock.conf create mode 100644 .config/hypr/hyprpaper.conf create mode 100644 .config/nwg-look/config create mode 100644 .config/waybar/config.jsonc create mode 100644 .config/waybar/power_menu.xml create mode 100644 .config/waybar/style.css create mode 100644 .config/xsettingsd/xsettingsd.conf create mode 100644 .icons/default/index.theme create mode 100755 .local/bin/panel/waybar.sh create mode 100644 etc/resolv.conf rename packages => packages/base (69%) create mode 100644 packages/packages create mode 100644 packages/packages-wayland diff --git a/.config/Kvantum/kvantum.kvconfig b/.config/Kvantum/kvantum.kvconfig new file mode 100644 index 0000000..402e301 --- /dev/null +++ b/.config/Kvantum/kvantum.kvconfig @@ -0,0 +1,2 @@ +[General] +theme=KvArcDark diff --git a/.config/Thunar/uca.xml b/.config/Thunar/uca.xml index 5bf8f5e..2cb4c78 100644 --- a/.config/Thunar/uca.xml +++ b/.config/Thunar/uca.xml @@ -4,8 +4,15 @@ utilities-terminal Open Terminal Here 1594675818593070-1 - urxvt -cd %f Open Terminal in the Current Directory + + + urxvt -cd %f + + + + + * diff --git a/.config/emacs/site-lisp/dot-elpaca.el b/.config/emacs/site-lisp/dot-elpaca.el index 4801a58..0a10c5d 100644 --- a/.config/emacs/site-lisp/dot-elpaca.el +++ b/.config/emacs/site-lisp/dot-elpaca.el @@ -9,12 +9,12 @@ ;; ----------------------------------------- ;; Elpaca bootstrap -(defvar elpaca-installer-version 0.8) +(defvar elpaca-installer-version 0.9) (defvar elpaca-directory (expand-file-name "elpaca/" user-emacs-directory)) (defvar elpaca-builds-directory (expand-file-name "builds/" elpaca-directory)) (defvar elpaca-repos-directory (expand-file-name "repos/" elpaca-directory)) (defvar elpaca-order '(elpaca :repo "https://github.com/progfolio/elpaca.git" - :ref nil :depth 1 + :ref nil :depth 1 :inherit ignore :files (:defaults "elpaca-test.el" (:exclude "extensions")) :build (:not elpaca--activate-package))) (let* ((repo (expand-file-name "elpaca/" elpaca-repos-directory)) diff --git a/.config/emacs/site-lisp/dot-org-mode.el b/.config/emacs/site-lisp/dot-org-mode.el index 5a73c72..72a9094 100644 --- a/.config/emacs/site-lisp/dot-org-mode.el +++ b/.config/emacs/site-lisp/dot-org-mode.el @@ -222,7 +222,8 @@ When ANYWHERE is non-nil, search beyond the preamble." ;;; Org Roam -(elpaca-setup emacsql-sqlite-builtin) +(elpaca-setup emacsql + (:also-load emacsql-sqlite-builtin)) (elpaca-setup org-roam (:autoload org-roam-node-find) ;; TODO, is this enough? diff --git a/.config/redshift/redshift.conf b/.config/gammastep/config.ini similarity index 72% rename from .config/redshift/redshift.conf rename to .config/gammastep/config.ini index f026b4f..d828abc 100644 --- a/.config/redshift/redshift.conf +++ b/.config/gammastep/config.ini @@ -1,4 +1,4 @@ -[redshift] +[general] temp-day=5700 ; >>> hostname=arch-desktop @@ -14,7 +14,13 @@ brightness-day=1.0 brightness-night=0.9 location-provider=manual + +; >>> session=xorg adjustment-method=randr +; <<< +; >>> session=wayland +; adjustment-method=wayland +; <<< [manual] lat=51.81 diff --git a/.config/ghostty/config b/.config/ghostty/config new file mode 100644 index 0000000..225b29a --- /dev/null +++ b/.config/ghostty/config @@ -0,0 +1,10 @@ +confirm-close-surface = false +copy-on-select = clipboard +cursor-style-blink = false +font-family = DejaVuSansM Nerd Font Mono +font-size = 10 +link-url = true +selection-invert-fg-bg = true +theme = terminal-sexy +window-decoration = false +window-inherit-working-directory = true diff --git a/.config/ghostty/themes/terminal-sexy b/.config/ghostty/themes/terminal-sexy new file mode 100644 index 0000000..042543f --- /dev/null +++ b/.config/ghostty/themes/terminal-sexy @@ -0,0 +1,21 @@ +palette = 0=#282a2e +palette = 1=#a54242 +palette = 2=#8c9440 +palette = 3=#de935f +palette = 4=#5f819d +palette = 5=#85678f +palette = 6=#5e8d87 +palette = 7=#707880 +palette = 8=#373b41 +palette = 9=#cc6666 +palette = 10=#b5bd68 +palette = 11=#f0c674 +palette = 12=#81a2be +palette = 13=#b294bb +palette = 14=#8abeb7 +palette = 15=#c5c8c6 +background = #1c1c1c +foreground = #c5c8c6 +cursor-color = #c5c8c6 +selection-background = #373b41 +selection-foreground = #c5c8c6 diff --git a/.config/gtk-2.0/gtkrc b/.config/gtk-2.0/gtkrc index 85c8576..1daaf15 100644 --- a/.config/gtk-2.0/gtkrc +++ b/.config/gtk-2.0/gtkrc @@ -1,6 +1,7 @@ -# DO NOT EDIT! This file will be overwritten by LXAppearance. +# DO NOT EDIT! This file will be overwritten by nwg-look. # Any customization should be done in ~/.gtkrc-2.0.mine instead. +include "/home/rick/.gtkrc-2.0.mine" gtk-theme-name="Arc-Dark" gtk-icon-theme-name="Arc" gtk-font-name="DejaVu Sans 10" diff --git a/.config/gtk-3.0/settings.ini b/.config/gtk-3.0/settings.ini index ca1c4c2..d889ab4 100644 --- a/.config/gtk-3.0/settings.ini +++ b/.config/gtk-3.0/settings.ini @@ -14,3 +14,4 @@ gtk-xft-antialias=1 gtk-xft-hinting=1 gtk-xft-hintstyle=hintslight gtk-xft-rgba=rgb +gtk-application-prefer-dark-theme=1 diff --git a/.config/hypr/hypridle.conf b/.config/hypr/hypridle.conf new file mode 100644 index 0000000..ccf085d --- /dev/null +++ b/.config/hypr/hypridle.conf @@ -0,0 +1,12 @@ +general { + lock_cmd = pidof hyprlock || hyprlock + before_sleep_cmd = loginctl lock-session + after_sleep_cmd = hyprctl dispatch dpms on # avoid having to press a key twice to turn on display +} + +# Turn the screen off after 30 seconds on the lock-screen +listener { + timeout = 30 + on-timeout = pidof hyprlock && hyprctl dispatch dpms off + on-resume = hyprctl dispatch dpms on +} diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf new file mode 100644 index 0000000..e9cd7e4 --- /dev/null +++ b/.config/hypr/hyprland.conf @@ -0,0 +1,406 @@ + +################ +### MONITORS ### +################ + +# See https://wiki.hyprland.org/Configuring/Monitors/ +monitor=,preferred,auto,auto + + +################### +### MY PROGRAMS ### +################### + +# See https://wiki.hyprland.org/Configuring/Keywords/ + +# Set programs that you use +$terminal = ghostty +$fileManager = thunar +$menu = rofi -show drun + + +################# +### AUTOSTART ### +################# + +# System level +exec-once = gammastep +exec-once = systemctl --user start hyprpolkitagent +exec-once = hyprctl setcursor capitaine-cursors-light 24 +exec-once = hypridle + +# Scripts +exec-once = ${HOME}/.local/bin/wm/wallpaper.sh +exec-once = ${HOME}/.local/bin/panel/waybar.sh + +# Applications +exec-once = [workspace 1] firefox +exec-once = [workspace 2] $terminal +exec-once = [workspace 3] thunar --daemon +exec-once = [workspace 3] thunar + + +############################# +### ENVIRONMENT VARIABLES ### +############################# + +# See https://wiki.hyprland.org/Configuring/Environment-variables/ + +env = XDG_CURRENT_DESKTOP,Hyprland +env = XDG_SESSION_TYPE,wayland +env = XDG_SESSION_DESKTOP,Hyprland + +env = XCURSOR_SIZE,24 +env = HYPRCURSOR_SIZE,24 + + +##################### +### LOOK AND FEEL ### +##################### + +# Refer to https://wiki.hyprland.org/Configuring/Variables/ + +# https://wiki.hyprland.org/Configuring/Variables/#general +general { + gaps_in = 5 + gaps_out = 10 + + border_size = 2 + + # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors + col.active_border = rgb(404552) + col.inactive_border = rgb(2b2e39) + + # Set to true enable resizing windows by clicking and dragging on borders and gaps + resize_on_border = false + + # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on + allow_tearing = false + + layout = dwindle +} + +# https://wiki.hyprland.org/Configuring/Variables/#decoration +decoration { + rounding = 0 + + # Change transparency of focused and unfocused windows + active_opacity = 1.0 + inactive_opacity = 1.0 + + shadow { + enabled = false + } + + # https://wiki.hyprland.org/Configuring/Variables/#blur + blur { + enabled = false + } +} + +# https://wiki.hyprland.org/Configuring/Variables/#animations +animations { + enabled = true + + # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more + + bezier = easeOutQuint,0.23,1,0.32,1 + bezier = easeInOutCubic,0.65,0.05,0.36,1 + bezier = linear,0,0,1,1 + bezier = almostLinear,0.5,0.5,0.75,1.0 + bezier = quick,0.15,0,0.1,1 + + animation = global, 1, 10, default + animation = border, 1, 5.39, easeOutQuint + animation = windows, 1, 4.79, easeOutQuint + animation = windowsIn, 1, 4.1, easeOutQuint, popin 87% + animation = windowsOut, 1, 1.49, linear, popin 87% + animation = fadeIn, 1, 1.73, almostLinear + animation = fadeOut, 1, 1.46, almostLinear + animation = fade, 1, 3.03, quick + animation = layers, 1, 3.81, easeOutQuint + animation = layersIn, 1, 4, easeOutQuint, fade + animation = layersOut, 1, 1.5, linear, fade + animation = fadeLayersIn, 1, 1.79, almostLinear + animation = fadeLayersOut, 1, 1.39, almostLinear + animation = workspaces, 1, 1.94, almostLinear, fade + animation = workspacesIn, 1, 1.21, almostLinear, fade + animation = workspacesOut, 1, 1.94, almostLinear, fade +} + +# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/ +# "Smart gaps" / "No gaps when only" +workspace = w[tv1], gapsout:0, gapsin:0 +workspace = f[1], gapsout:0, gapsin:0 +windowrulev2 = bordersize 0, floating:0, onworkspace:w[tv1] +windowrulev2 = rounding 0, floating:0, onworkspace:w[tv1] +windowrulev2 = bordersize 0, floating:0, onworkspace:f[1] +windowrulev2 = rounding 0, floating:0, onworkspace:f[1] + +# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more +dwindle { + force_split = 2 # split to the bottom right + preserve_split = true + pseudotile = false +} + +# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more +master { + new_status = master +} + +# https://wiki.hyprland.org/Configuring/Variables/#misc +misc { + disable_hyprland_logo = true + vfr = true # lower amount of sent frames when nothing is happening on-screen +} + + +############# +### INPUT ### +############# + +# https://wiki.hyprland.org/Configuring/Variables/#input +input { + kb_layout = us + kb_variant = + kb_model = + kb_options = caps:swapescape + kb_rules = + + follow_mouse = 1 + + sensitivity = 0 # -1.0 - 1.0, 0 means no modification. + + touchpad { + natural_scroll = false + } +} + +# https://wiki.hyprland.org/Configuring/Variables/#gestures +gestures { + workspace_swipe = false +} + +# Example per-device config +# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more +device { # hyprctl devices + name = logitech-wireless-mouse-pid:4038 + sensitivity = -0.5 + accel_profile = flat +} + + +################### +### KEYBINDINGS ### +################### + +# See https://wiki.hyprland.org/Configuring/Keywords/ +$mainMod = SUPER # Sets "Windows" key as main modifier + +# Bind docs https://wiki.hyprland.org/Configuring/Binds/ + +#--- Control ---# + +# Reload hyprland +bind = $mainMod Control_L, r, forcerendererreload + +# Close hyprland +bind = $mainMod SHIFT, M, exit, + +#--- Window ---# + +# Close window +bind = $mainMod, q, killactive, + +#-- State/flags --# + +# Toggle fullscreen mode +bind = $mainMod, f, fullscreen + +# Toggle tiled/floating +bind = $mainMod, Space, togglefloating, + +#-- Focus --# + +# Focus window in direction +bind = $mainMod, h, movefocus, l +bind = $mainMod, j, movefocus, d +bind = $mainMod, k, movefocus, u +bind = $mainMod, l, movefocus, r +bind = $mainMod, left, movefocus, l +bind = $mainMod, right, movefocus, r +bind = $mainMod, up, movefocus, u +bind = $mainMod, down, movefocus, d + +# Focus previous/next window +bind = $mainMod, Tab, cyclenext +bind = $mainMod SHIFT, Tab, cyclenext, prev + +# Focus workspace +bind = $mainMod, 1, workspace, 1 +bind = $mainMod, 2, workspace, 2 +bind = $mainMod, 3, workspace, 3 +bind = $mainMod, 4, workspace, 4 +bind = $mainMod, 5, workspace, 5 +bind = $mainMod, 6, workspace, 6 +bind = $mainMod, 7, workspace, 7 +bind = $mainMod, 8, workspace, 8 +bind = $mainMod, 9, workspace, 9 +bind = $mainMod, 0, workspace, 10 + +# Focus previous/next workspace +bind = $mainMod, equal, workspace, e+1 +bind = $mainMod, minus, workspace, e-1 + +# Focus last workspace +bind = $mainMod, GRAVE, focuscurrentorlast + +# Focus previous/next monitor +# TODO + +# Special workspace (scratchpad) +bind = $mainMod, T, togglespecialworkspace, magic + +#-- Move --# + +# Send window to workspace +bind = $mainMod SHIFT, 1, movetoworkspace, 1 +bind = $mainMod SHIFT, 2, movetoworkspace, 2 +bind = $mainMod SHIFT, 3, movetoworkspace, 3 +bind = $mainMod SHIFT, 4, movetoworkspace, 4 +bind = $mainMod SHIFT, 5, movetoworkspace, 5 +bind = $mainMod SHIFT, 6, movetoworkspace, 6 +bind = $mainMod SHIFT, 7, movetoworkspace, 7 +bind = $mainMod SHIFT, 8, movetoworkspace, 8 +bind = $mainMod SHIFT, 9, movetoworkspace, 9 +bind = $mainMod SHIFT, 0, movetoworkspace, 10 + +# Move window to previous/next workspace +bind = $mainMod SHIFT, equal, movetoworkspace, e+1 +bind = $mainMod SHIFT, minus, movetoworkspace, e-1 + +# Move window to previous/next monitor +# TODO + +# Move floating window +bind = Control_L Alt_L, h, moveactive, -30 0 +bind = Control_L Alt_L, j, moveactive, 0 30 +bind = Control_L Alt_L, k, moveactive, 0 -30 +bind = Control_L Alt_L, l, moveactive, 30 0 +bind = Control_L Alt_L, left, moveactive, -30 0 +bind = Control_L Alt_L, right, moveactive, 30 0 +bind = Control_L Alt_L, up, moveactive, 0 -30 +bind = Control_L Alt_L, down, moveactive, 0 30 + +# Flip the tree from the current windows parent +bind = $mainMod Alt_L, 5, swapsplit, # dwindle +bind = $mainMod Alt_L, 6, togglesplit, # dwindle + +# Special workspace (scratchpad) +bind = $mainMod SHIFT, T, movetoworkspace, special:magic + +#-- Resize --# + +# Resize windows +bind = $mainMod Alt_L, h, resizeactive, -10 0 +bind = $mainMod Alt_L, j, resizeactive, 0 10 +bind = $mainMod Alt_L, k, resizeactive, 0 -10 +bind = $mainMod Alt_L, l, resizeactive, 10 0 +bind = $mainMod Alt_L, left, resizeactive, -10 0 +bind = $mainMod Alt_L, right, resizeactive, 10 0 +bind = $mainMod Alt_L, up, resizeactive, 0 -10 +bind = $mainMod Alt_L, down, resizeactive, 0 10 + +# Move/resize windows with mainMod + LMB/RMB and dragging +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow + +#-- Preselect node --# + +bind = SUPER Control_L, h, layoutmsg, preselect left +bind = SUPER Control_L, j, layoutmsg, preselect down +bind = SUPER Control_L, k, layoutmsg, preselect up +bind = SUPER Control_L, l, layoutmsg, preselect right +bind = SUPER Control_L, left, layoutmsg, preselect left +bind = SUPER Control_L, right, layoutmsg, preselect right +bind = SUPER Control_L, up, layoutmsg, preselect up +bind = SUPER Control_L, down, layoutmsg, preselect down + +#--- General ---# + +# Start terminal +bind = $mainMod, Return, exec, $terminal + +# Start rofi (program launcher) +bind = $mainMod, d, exec, $menu + +# mpv +bind = $mainMod, m, exec, play +bind = $mainMod SHIFT, m, exec, play queue + +#--- Control, compositor agnostic ---# + +# Reload +bind = $mainMod Control_L, r, exec, ${HOME}/.local/bin/panel/waybar.sh + +# System +bind = $mainMod SHIFT, s, exec, system + +# Screen brightness +bind = $mainMod, F2, exec, brictl dec 10 +bind = $mainMod, F3, exec, brictl inc 10 + +# Screen capture +bind = , Print, exec, printscreen +bind = Control_L, Print, exec, aliases screencast + +# Laptop multimedia keys +bindel = , XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ +bindel = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- +bindel = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle +bindel = , XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle +bindel = , XF86MonBrightnessUp, exec, brictl inc 10 +bindel = , XF86MonBrightnessDown, exec, brictl dec 10 + +bindl = , XF86AudioNext, exec, playerctl next +bindl = , XF86AudioPause, exec, playerctl play-pause +bindl = , XF86AudioPlay, exec, playerctl play-pause +bindl = , XF86AudioPrev, exec, playerctl previous + +bindl = , XF86HomePage, exec, inputctl -d toggle # toggle touchpad +bindl = , XF86Search, exec, inputctl -s toggle # toggle touchscreen + +#--- Notification ---# + +# Notifiation +bind = Control_L, space, exec, dunstctl close +bind = Control_L SHIFT, space, exec, dunstctl close-all +bind = Control_L, grave, exec, dunstctl history-pop +bind = Control_L SHIFT, period, exec, dunstctl context + + +############################## +### WINDOWS AND WORKSPACES ### +############################## + +# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more +# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules + +# Ignore maximize requests from apps. You'll probably like this. +windowrulev2 = suppressevent maximize, class:.* + +# Fix some dragging issues with XWayland +windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 + +# Set to floating +windowrule = float, feh # window rule v1 can only do either class or title, not both +windowrule = float, mpv +windowrule = float, org.pulseaudio.pavucontrol +windowrule = float, xarchiver +windowrulev2 = float, class:firefox, title:Library +windowrulev2 = float, class:firefox, title:^About.* +windowrulev2 = float, class:thunar, title:File Operation Progress + +# Resize floating windows +windowrule = size >50% >70%, org.pulseaudio.pavucontrol diff --git a/.config/hypr/hyprlock.conf b/.config/hypr/hyprlock.conf new file mode 100644 index 0000000..c42aad5 --- /dev/null +++ b/.config/hypr/hyprlock.conf @@ -0,0 +1,72 @@ +$font_size = 48 +$font_size_small = 16 +$image_size = 175 + +general { + hide_cursor = true + ignore_empty_input = true +} + +background { + monitor = + path = screenshot + blur_passes = 2 + blur_size = 2 + noise = 0 +} + +label { + font_family = DejaVu Sans Serif + font_size = $font_size + + text = $TIME12 + text_align = center + + position = 0, 275 + halign = center + valign = center +} + +label { + font_family = DejaVu Sans Serif + font_size = $font_size_small + + text = cmd[] date "+%A, %B %d" + + position = 0, 200 + halign = center + valign = center +} + +image { + monitor = + path = ~/.local/bin/wm/lock.png + size = $image_size + rounding = -1 + border_size = 0 + + halign = center + valign = center +} + +input-field { + monitor = + size = $image_size, $image_size + + outline_thickness = 10 + outer_color = rgba(0, 0, 0, 0.0) + inner_color = rgba(0, 0, 0, 0.0) + check_color = rgba(0, 0, 0, 0.0) + + font_family = DejaVu Sans Serif + font_color = rgba(255, 255, 255, 0.9) + placeholder_text = + fail_text = + + hide_input = true + rounding = -1 + fade_on_empty = false + + halign = center + valign = center +} diff --git a/.config/hypr/hyprpaper.conf b/.config/hypr/hyprpaper.conf new file mode 100644 index 0000000..e69de29 diff --git a/.config/mpv/mpv.conf b/.config/mpv/mpv.conf index 40ed866..6d3fbe4 100644 --- a/.config/mpv/mpv.conf +++ b/.config/mpv/mpv.conf @@ -31,7 +31,7 @@ sub-auto=fuzzy sub-file-paths=ass:srt:sub:subs:subtitles:Subtitles # [SUBTITLES LOOK] (for srt) -sub-font="Segoe UI Semibold" +sub-font="DejaVu Sans" sub-font-size=48 sub-margin-y=36 sub-color="#FFFFFFFF" diff --git a/.config/nvim/lazy-lock.json b/.config/nvim/lazy-lock.json index a0e42c8..c58aeed 100644 --- a/.config/nvim/lazy-lock.json +++ b/.config/nvim/lazy-lock.json @@ -11,7 +11,7 @@ "diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" }, "friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" }, "gitsigns.nvim": { "branch": "main", "commit": "5f808b5e4fef30bd8aca1b803b4e555da07fc412" }, - "lazy.nvim": { "branch": "main", "commit": "7c493713bc2cb392706866eeba53aaef6c8e9fc6" }, + "lazy.nvim": { "branch": "main", "commit": "7e6c863bc7563efbdd757a310d17ebc95166cef3" }, "lspkind.nvim": { "branch": "master", "commit": "d79a1c3299ad0ef94e255d045bed9fa26025dab6" }, "lspsaga.nvim": { "branch": "main", "commit": "2710a0ad97b5aaff404cd4756c296df454b3f726" }, "lualine.nvim": { "branch": "master", "commit": "2a5bae925481f999263d6f5ed8361baef8df4f83" }, diff --git a/.config/nwg-look/config b/.config/nwg-look/config new file mode 100644 index 0000000..3f49ae5 --- /dev/null +++ b/.config/nwg-look/config @@ -0,0 +1,7 @@ +{ + "export-settings-ini": true, + "export-gtkrc-20": true, + "export-index-theme": true, + "export-xsettingsd": true, + "export-gtk4-symlinks": true +} \ No newline at end of file diff --git a/.config/qt6ct/qt6ct.conf b/.config/qt6ct/qt6ct.conf index 2f3a3d8..0d855e5 100644 --- a/.config/qt6ct/qt6ct.conf +++ b/.config/qt6ct/qt6ct.conf @@ -6,8 +6,8 @@ standard_dialogs=default style=qt6gtk2 [Fonts] -fixed=@Variant(\0\0\0@\0\0\0\x16\0\x44\0\x65\0j\0\x61\0V\0u\0 \0S\0\x61\0n\0s@$\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10) -general=@Variant(\0\0\0@\0\0\0\x16\0\x44\0\x65\0j\0\x61\0V\0u\0 \0S\0\x61\0n\0s@$\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10) +fixed="DejaVu Sans,10,-1,5,400,0,0,0,0,0,0,0,0,0,0,1" +general="DejaVu Sans,10,-1,5,400,0,0,0,0,0,0,0,0,0,0,1" [Interface] activate_item_on_single_click=1 diff --git a/.config/waybar/config.jsonc b/.config/waybar/config.jsonc new file mode 100644 index 0000000..b76654a --- /dev/null +++ b/.config/waybar/config.jsonc @@ -0,0 +1,150 @@ +// -*- mode: jsonc -*- +{ + // "layer": "top", // Waybar at top layer + "position": "top", + "height": 22, // Waybar height (to be removed for auto height) + "spacing": 0, // Gaps between modules (4px) + // Choose the order of the modules + "modules-left": [ + "hyprland/workspaces", + ], + "modules-center": [ + "hyprland/window" + ], + "modules-right": [ + "custom/btc", + "pulseaudio", + "backlight", + "network", + "battery", + "custom/battery-low", + "clock", + "tray", + "custom/power" + ], + // Modules configuration + "hyprland/workspaces": { + "disable-scroll": false, + "on-scroll-up": "hyprctl dispatch workspace -1", + "on-scroll-down": "hyprctl dispatch workspace +1", + "all-outputs": true, + "warp-on-scroll": false, + "format": "{icon}", + "format-icons": { + "1": "一", + "2": "二", + "3": "三", + "4": "四", + "5": "五", + "6": "六", + "7": "七", + "8": "八", + "9": "九", + "0": "十", + "urgent": "", + "focused": "", + "default": "" + // "persistent-workspaces": { + // "*": 5, // 5 workspaces by default on every monitor + // "HDMI-A-1": 3 // but only three on HDMI-A-1 + // } + } + }, + "custom/btc": { + "escape": false, + "exec": "$HOME/.local/bin/panel/btc.sh", + "interval": 300, + "format": " {}", + "tooltip": false + }, + "pulseaudio": { + "scroll-step": 2, // %, can be a float + "format": "{icon} {volume}%", + "format-bluetooth": "{icon} {volume}%", + "format-bluetooth-muted": " {icon}", + "format-muted": " {volume}%", + "format-source": "{volume}%", + "format-source-muted": "", + "format-icons": { + "headphone": "", + "hands-free": "", + "headset": "", + "phone": "", + "portable": "", + "car": "", + "default": ["", "", ""] + }, + "on-click": "pavucontrol" + }, + "backlight": { + "device": "intel_backlight", + "format": "{percent}% {icon}", + "format-icons": ["", "", "", "", "", "", "", "", ""] + }, + "network": { + "format-wifi": " {signalStrength}%", + "format-ethernet": "", + "tooltip-format": "{ifname}: {ipaddr}/{cidr}\n via {gwaddr}", + "tooltip-format-wifi": "{ifname}: {ipaddr}/{cidr}\n via {gwaddr}\n ssid {essid}", + "tooltip-format-disconnected": "Disconnected", + "format-linked": " (No IP)", + "format-disconnected": "", + "on-click": "$HOME/.local/bin/panel/iface.sh" + }, + "battery": { + "bat": "BAT0", + "interval": 30, + "full-at": 98, + "states": { + "good": 95, + "critical": 20 + }, + "format": "{icon} {capacity}% ({time})", + "format-time": "{H}:{m}", + "format-full": "{icon} {capacity}%", + "format-charging": " {capacity}%", + "format-plugged": " {capacity}%", + "format-icons": ["", "", "", "", ""] + }, + "custom/battery-low": { + "exec": "$HOME/.local/bin/panel/battery.sh", + "interval": 30, + "format": "", + "tooltip": false + }, + "clock": { + // "timezone": "America/New_York", + "tooltip-format": "{calendar}", + "calendar": { + "mode" : "month", + "mode-mon-col" : 3, + "weeks-pos" : "right", + "format": { + "months": "{}", + "days": "{}", + "weeks": "W{}", + "weekdays": "{}", + "today": "{}" + } + }, + "format": " {:%I:%M %p}", + "on-click": "$HOME/.local/bin/panel/date.sh" + }, + "tray": { + // "icon-size": 21, + "spacing": 10 + }, + "custom/power": { + "format": "⏻", + "tooltip": false, + "menu": "on-click", + "menu-file": "$HOME/.config/waybar/power_menu.xml", // Menu file in resources folder + "menu-actions": { + "lock": "hyprlock", + "shutdown": "shutdown", + "reboot": "reboot", + "suspend": "systemctl suspend", + "hibernate": "systemctl hibernate" + } + } +} diff --git a/.config/waybar/power_menu.xml b/.config/waybar/power_menu.xml new file mode 100644 index 0000000..1836c87 --- /dev/null +++ b/.config/waybar/power_menu.xml @@ -0,0 +1,33 @@ + + + + + + Lock + + + + + Suspend + + + + + Hibernate + + + + + Shutdown + + + + + + + + Reboot + + + + diff --git a/.config/waybar/style.css b/.config/waybar/style.css new file mode 100644 index 0000000..75bcc6a --- /dev/null +++ b/.config/waybar/style.css @@ -0,0 +1,228 @@ +@define-color black #000; +@define-color red #a54242; /* 1 */ +@define-color orange #de935f; /* 3 */ +@define-color blue #5f819d; /* 4 */ +@define-color green #b5bd68; /* 10 */ + +@define-color bgcolor #404552; +@define-color bgcolor-inactive #2b2e39; +@define-color bgcolor-urgent #dc7a43; +@define-color fgcolor #fff; +@define-color fgcolor-inactive #676e7d; + +* { + /* `otf-font-awesome` is required to be installed for icons */ + font-family: FontAwesome, DejaVu Sans Serif; + font-size: 12px; +} + +window#waybar { + background-color: @bgcolor-inactive; + color: @fgcolor; + transition-property: background-color; + transition-duration: .5s; +} + +window#waybar.hidden { + opacity: 0.2; +} + +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 @fgcolor; +} + +#custom-btc, +#pulseaudio, +#wireplumber, +#custom-media, +#backlight, +#network, +#battery, +#clock, +#tray, +#custom-power { + padding: 0 6px; + color: @fgcolor; +} + +#window, +#workspaces { + margin: 0 4px; +} + +@keyframes blink { + to { + background-color: @fgcolor; + color: @black; + } +} + +label:focus { + background-color: @black; +} + +/* -------------------------------------- */ +/* Workspaces module */ + +#workspaces button { + padding: 0 5px; + background-color: transparent; + color: @fgcolor-inactive; + box-shadow: none; +} + +#workspaces button:hover { + background-color: @bgcolor; +} + +#workspaces button.active { + background-color: @bgcolor; + box-shadow: inset 0 -3px @blue; + color: @fgcolor; +} + +#workspaces button.focused { + background-color: @bgcolor; +} + +#workspaces button.urgent { + background-color: @bgcolor-urgent; +} + +/* 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; +} + +/* -------------------------------------- */ +/* BTC module */ + +#custom-btc:hover { + background-color: @bgcolor; +} + +/* -------------------------------------- */ +/* Media modules */ + +#pulseaudio, #wireplumber { + color: @fgcolor; +} + +#pulseaudio:hover, #wireplumber:hover { + background-color: @bgcolor; +} + +#pulseaudio.muted, #wireplumber.muted { + color: @fgcolor-inactive +} + +#custom-media { + color: @green; + min-width: 100px; +} + +#custom-media.custom-spotify { + color: @green; +} + +#custom-media.custom-vlc { + color: @orange; +} + +/* -------------------------------------- */ +/* Backlight module */ + +#backlight:hover { + background-color: @bgcolor; +} + +/* -------------------------------------- */ +/* Network module */ + +#network:hover { + background-color: @bgcolor; +} + +#network.disconnected { + background-color: @bgcolor-inactive; +} + +/* -------------------------------------- */ +/* Battery module */ + +#battery:hover { + background-color: @bgcolor; +} + +#battery.good { + color: @green; +} + +/* Using steps() instead of linear as a timing function to limit cpu usage */ +#battery.critical:not(.charging) { + background-color: @bgcolor-urgent; + animation-name: blink; + animation-duration: 2s; + animation-timing-function: steps(3); + animation-iteration-count: infinite; + animation-direction: alternate; +} + +/* -------------------------------------- */ +/* Clock module */ + +#clock:hover { + background-color: @bgcolor; +} + +/* -------------------------------------- */ +/* Tray module */ + +#tray:hover { + background-color: @bgcolor; +} + +#tray > .passive { + -gtk-icon-effect: dim; +} + +#tray > .needs-attention { + -gtk-icon-effect: highlight; + background-color: @bgcolor-urgent; +} + +/* -------------------------------------- */ +/* Power module */ + +#custom-power { + color: @red; +} + +#custom-power:hover { + background-color: @bgcolor; +} + +/* If power module is the leftmost module, set left margin */ +.modules-left > widget:first-child > #custom-power { + margin-left: 6px; +} + +/* If power module is the rightmost module, set right margin */ +.modules-right > widget:last-child > #custom-power { + margin-right: 6px; +} diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml index e482efd..cb36205 100644 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml +++ b/.config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml @@ -1,20 +1,20 @@ - + - - + + - + - + diff --git a/.config/xsettingsd/xsettingsd.conf b/.config/xsettingsd/xsettingsd.conf new file mode 100644 index 0000000..133540f --- /dev/null +++ b/.config/xsettingsd/xsettingsd.conf @@ -0,0 +1,9 @@ +Net/ThemeName "Arc-Dark" +Net/IconThemeName "Arc" +Gtk/CursorThemeName "capitaine-cursors-light" +Net/EnableEventSounds 1 +EnableInputFeedbackSounds 1 +Xft/Antialias 1 +Xft/Hinting 1 +Xft/HintStyle "hintslight" +Xft/RGBA "rgb" diff --git a/.config/zsh/.zlogin b/.config/zsh/.zlogin index 3ecebbe..193a596 100644 --- a/.config/zsh/.zlogin +++ b/.config/zsh/.zlogin @@ -1,3 +1,7 @@ XORG_USER='rick' -[ "$USER" = "$XORG_USER" ] && [ "$(tty)" = "/dev/tty1" ] && exec xinit -- vt1 > /dev/null 2>&1 +if [ "$WAYLAND" = true ]; then + [ "$USER" = "$XORG_USER" ] && [ "$(tty)" = "/dev/tty1" ] && exec hyprland > /dev/null 2>&1 +else + [ "$USER" = "$XORG_USER" ] && [ "$(tty)" = "/dev/tty1" ] && exec xinit -- vt1 > /dev/null 2>&1 +fi diff --git a/.config/zsh/.zprofile b/.config/zsh/.zprofile index 6482c6d..1428531 100644 --- a/.config/zsh/.zprofile +++ b/.config/zsh/.zprofile @@ -24,6 +24,11 @@ export R_ENVIRON_USER="$XDG_CONFIG_HOME/R/Renviron" # export HIDPI=true # <<< +# Wayland +# >>> system=wayland +# export WAYLAND=true +# <<< + #--- Program Specific ---# # Android @@ -79,7 +84,12 @@ if [ "$HIDPI" = true ]; then export QT_AUTO_SCREEN_SCALE_FACTOR=0 export QT_SCREEN_SCALE_FACTORS=2 fi -export QT_QPA_PLATFORMTHEME="qt5gtk2" +if [ "$WAYLAND" = true ]; then + export QT_QPA_PLATFORM="wayland" +fi +export QT_QPA_PLATFORMTHEME="qt5ct" +export QT_WAYLAND_DISABLE_WINDOWDECORATION="1" +export QT_STYLE_OVERRIDE="kvantum" # Rust export CARGO_HOME="$XDG_DATA_HOME/cargo" @@ -104,7 +114,11 @@ export WGETRC="$XDG_CONFIG_HOME/wget/wgetrc" export WINEPREFIX="$XDG_DATA_HOME/wine" # WM -export WM="bspwm" +if [ "$WAYLAND" = true ]; then + export WM="hyprland" +else + export WM="bspwm" +fi # Xorg export XINITRC="$XDG_CONFIG_HOME/xorg/xinitrc" diff --git a/.config/zsh/.zshrc b/.config/zsh/.zshrc index 7c538d5..b59fa7c 100644 --- a/.config/zsh/.zshrc +++ b/.config/zsh/.zshrc @@ -73,10 +73,14 @@ zle -N history-beginning-search-backward-end history-search-end zle -N history-beginning-search-forward-end history-search-end bindkey '\eOc' forward-word # ctrl-right +bindkey '\e[1;5C' forward-word # ctrl-right bindkey '\eOd' backward-word # ctrl-left +bindkey '\e[1;5D' backward-word # ctrl-left bindkey '\e[3~' delete-char # del bindkey '\e[7~' beginning-of-line # home +bindkey '\e[H' beginning-of-line # home bindkey '\e[8~' end-of-line # end +bindkey '\e[F' end-of-line # end bindkey '\e[A' history-beginning-search-backward-end # up bindkey '\e[B' history-beginning-search-forward-end # down bindkey '\e[Z' reverse-menu-complete # shift-tab diff --git a/.icons/default/index.theme b/.icons/default/index.theme new file mode 100644 index 0000000..b144348 --- /dev/null +++ b/.icons/default/index.theme @@ -0,0 +1,5 @@ +# This file is written by nwg-look. Do not edit. +[Icon Theme] +Name=Default +Comment=Default Cursor Theme +Inherits=capitaine-cursors-light diff --git a/.local/bin/panel/btc.sh b/.local/bin/panel/btc.sh index 44d25b6..c789477 100755 --- a/.local/bin/panel/btc.sh +++ b/.local/bin/panel/btc.sh @@ -1,6 +1,6 @@ #!/bin/sh -file="/tmp/polybar-btc-module" +file="/tmp/panel-btc-module" # Enable mathematics in POSIX shell calc() { awk "BEGIN { printf(\"%.2f\", $*) }"; } @@ -27,7 +27,12 @@ output() { fi # Result + # >>> session=xorg echo "%{F$color}$symbol $difference%%{F$COLOR15}" + # <<< + # >>> session=wayland + # echo "$symbol $difference%" + # <<< } if [ ! -f "$file" ]; then diff --git a/.local/bin/panel/waybar.sh b/.local/bin/panel/waybar.sh new file mode 100755 index 0000000..b73e1b6 --- /dev/null +++ b/.local/bin/panel/waybar.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +# Kill existing panel +pkill --exact --signal 9 waybar + +# Start panel +setsid -f waybar diff --git a/.local/bin/printscreen b/.local/bin/printscreen index 92d9048..94a80d2 100755 --- a/.local/bin/printscreen +++ b/.local/bin/printscreen @@ -1,12 +1,17 @@ #!/bin/sh # Take a screenshot with the configured program -# Depends: scrot / maim, xdotool / magick, xdotool +# Depends: rofi and scrot / maim, xdotool / magick, xdotool / grim, slurp, jq # User-config--------------------------- -# scrot / maim / magick import +# scrot / maim / magick import / grim +# >>> session=xorg screenshotter="maim" +# <<< +# >>> session=wayland +# screenshotter="grim" +# <<< # -------------------------------------- @@ -25,6 +30,12 @@ elif [ "$screenshotter" = "magick import" ] || [ "$screenshotter" = "import" ]; selection="" activeWindow="-window \$(xdotool getactivewindow)" filename="$CAPTURE/$(date '+%Y-%m-%d-%H%M%S')_import.png" +elif [ "$screenshotter" = "grim" ]; then + screenshotter="" # start of command needs to be overwritten + fullscreen="grim" + selection="slurp | grim -g -" + activeWindow="hyprctl -j activewindow | jq -r '\"\(.at[0]),\(.at[1]) \(.size[0])x\(.size[1])\"' | grim -g -" + filename="$CAPTURE/$(date '+%Y-%m-%d-%H%M%S')_grim.png" else echo "Printscreen configuration is invalid" exit 1 diff --git a/.local/bin/wm/wallpaper.sh b/.local/bin/wm/wallpaper.sh index 3a88d10..ab6791b 100755 --- a/.local/bin/wm/wallpaper.sh +++ b/.local/bin/wm/wallpaper.sh @@ -1,7 +1,26 @@ #!/bin/sh +WALLPAPER="$HOME/pictures/wallpaper.jpg" + # Overwrite wallpaper with new image if provided -[ -n "$1" ] && cp "$1" "$HOME/pictures/wallpaper.jpg" +[ -n "$1" ] && cp "$1" "$WALLPAPER" # Set wallpaper -feh --no-fehbg --bg-fill "$HOME/pictures/wallpaper.jpg" +if [ "$WAYLAND" = true ]; then + pkill hyprpaper + setsid -f hyprpaper + + # Wait until hyprpaper is available + while true; do + output=$(hyprctl hyprpaper) + if ! echo "$output" | grep -q ".sock"; then + break + fi + sleep 0.1 + done + + hyprctl hyprpaper preload "$WALLPAPER" + hyprctl hyprpaper wallpaper ",$WALLPAPER" +else + feh --no-fehbg --bg-fill "$WALLPAPER" +fi diff --git a/README.org b/README.org index 51f8ca2..1d91cc4 100644 --- a/README.org +++ b/README.org @@ -1,7 +1,7 @@ #+TITLE: Dotfiles #+OPTIONS: toc:nil -This is a collection of dotfiles and scripts for my i3/bspwm setup, previewed below: +This is a collection of dotfiles and scripts for my i3/bspwm/hyprland setup, previewed below: [[screenshot.png]] diff --git a/etc/resolv.conf b/etc/resolv.conf new file mode 100644 index 0000000..5d7ad2f --- /dev/null +++ b/etc/resolv.conf @@ -0,0 +1,3 @@ +# Resolver configuration file. +# See resolv.conf(5) for details. +nameserver 192.168.0.1 diff --git a/packages b/packages/base similarity index 69% rename from packages rename to packages/base index a03ae10..30cfae8 100644 --- a/packages +++ b/packages/base @@ -1,18 +1,14 @@ acpi adobe-source-han-sans-jp-fonts -alsa-utils -android-studio -android-tools -arandr arc-gtk-theme +archlinux-keyring arc-icon-theme aria2 aspell-en aspell-nl -autorandr base +base-devel brightnessctl -bspwm capitaine-cursors checkbashisms chromium @@ -21,32 +17,23 @@ cmake dhcpcd dialog dnsmasq -domoticz-git dos2unix downgrade -doxygen duf dunst -ebtables -edk2-ovmf efibootmgr -emacs-nativecomp evtest exfat-utils feh ffmpegthumbnailer firefox -frei0r-plugins -fritzing gdb gedit -ghc git gnome-calculator gnome-keyring gnome-themes-extra gparted -graphviz gst-plugins-good gucharmap gvfs @@ -57,32 +44,19 @@ htop hunspell hunspell-en_us hunspell-nl -i3lock-color-git imagemagick inetutils inkscape -intel-media-driver -intel-media-sdk -intel-ucode isync iw -jdk11-openjdk -jdownloader2 jq kcachegrind kdenlive keepmenu-git kolourpaint -kotlin-language-server-git krita -lib32-alsa-lib -lib32-alsa-plugins lib32-glibc -lib32-libpulse lib32-openal -lib32-vulkan-intel -libmtp -libnotify-id libvirt linux linux-firmware @@ -90,17 +64,11 @@ linux-headers linux-lts linux-lts-headers llvm -lua-language-server-git -lvm2 -lxappearance -maim manafiles-git man-db man-pages mariadb -mdadm mesa-demos -minted mkvtoolnix-cli moka-icon-theme-git mpv @@ -109,10 +77,9 @@ mysql-workbench namcap ncdu neofetch -nerd-fonts-dejavu-complete +neovim netctl nlohmann-json -nodejs-intelephense ntfs-3g openssh otf-font-awesome @@ -121,12 +88,7 @@ pacman-contrib pamixer pavucontrol pdfjs -platformio -polkit-kde-agent -polybar poppler-glib -pulseaudio -pulseaudio-alsa python-adblock python-beautifulsoup4 python-certifi @@ -134,46 +96,33 @@ python-filelock python-flask python-google-api-python-client python-google-auth-oauthlib -python-image python-matplotlib python-opengl python-pycurl python-pyqt5 python-pyusb -python-tqdm python-watchdog python-zstandard qbittorrent -qemu -qemu-arch-extra +qt5ct qt5-serialport qt5-tools -qt5ct -qt5gtk2 qt6ct -qt6gtk2 r -redshift reflector renderdoc-bin -rofi rsync rtmpdump -rxvt-unicode signal-desktop smartmontools socat sqlitebrowser sshfs -stalonetray streamlink -sxhkd syncthing -synergy2-bin sysfsutils texlab texlive-bibtexextra -texlive-core texlive-fontsextra texlive-formatsextra texlive-games @@ -193,8 +142,8 @@ tokei tree trizen ttf-dejavu +ttf-dejavu-nerd ttf-joypixels -ttf-ms-win10 tumbler tumbler-extra-thumbnailers unrar @@ -202,27 +151,14 @@ unzip usbutils valgrind ventoy-bin +vim-spell-en vim-spell-nl -virt-manager -vulkan-intel wget wine-staging wpa_supplicant -x264 x86_energy_perf_policy -xarchiver -xclip -xdo -xdotool xf86-input-wacom xfsprogs -xorg-server -xorg-xev -xorg-xinit -xorg-xinput -xorg-xprop -xorg-xrandr -xorg-xsetroot yt-dlp yt-dlp-drop-in zathura diff --git a/packages/packages b/packages/packages new file mode 100644 index 0000000..b757484 --- /dev/null +++ b/packages/packages @@ -0,0 +1,51 @@ +arandr +autorandr +bspwm +doxygen +ebtables +emacs-nativecomp +frei0r-plugins +fritzing +ghc +graphviz +i3lock-color-git +intel-media-driver +intel-media-sdk +intel-ucode +lib32-vulkan-intel +libmtp +libnotify-id +lxappearance +maim +mdadm +minted +platformio +polkit-kde-agent +polybar +python-image +python-tqdm +qemu +qemu-arch-extra +qt5gtk2 +qt6gtk2 +redshift +rofi +rxvt-unicode +stalonetray +sxhkd +synergy2-bin +texlive-core +ttf-ms-win10 +vulkan-intel +x264 +xarchiver +xclip +xdo +xdotool +xorg-server +xorg-xev +xorg-xinit +xorg-xinput +xorg-xprop +xorg-xrandr +xorg-xsetroot diff --git a/packages/packages-wayland b/packages/packages-wayland new file mode 100644 index 0000000..2960598 --- /dev/null +++ b/packages/packages-wayland @@ -0,0 +1,32 @@ +amd-ucode +ark +dxvk-bin +emacs-wayland +gamescope +gammastep +ghostty +grim +hypridle +hyprland +hyprlock +hyprpaper +hyprpolkitagent +kvantum +kvantum-qt5 +lib32-mesa +lib32-vkd3d-proton-git +lib32-vulkan-radeon +nwg-look +pipewire-alsa +pipewire-pulse +rofi-wayland +rtkit +slurp +steam +sunshine-bin +vkd3d-proton-bin +vulkan-radeon +waybar +wl-clipboard +xdg-desktop-portal-hyprland +ydotool