better stow
This commit is contained in:
@@ -38,6 +38,10 @@ https://github.com/user-attachments/assets/7e2db305-58bc-4b3d-9c65-7dc0461aead7
|
|||||||
|
|
||||||
## Setup Overview
|
## Setup Overview
|
||||||
|
|
||||||
|
> [!NOTE]
|
||||||
|
>
|
||||||
|
> See also [config-stow](./config-stow) for the list of stow packages.
|
||||||
|
|
||||||
- OS: **Archlinux**
|
- OS: **Archlinux**
|
||||||
- WM: Hyprland | **Niri**
|
- WM: Hyprland | **Niri**
|
||||||
- Bar: Waybar | **Quickshell**
|
- Bar: Waybar | **Quickshell**
|
||||||
|
|||||||
+31
-25
@@ -5,46 +5,52 @@ from argparse import ArgumentParser
|
|||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
BASE_PKGS = [
|
BASE_PKGS = [
|
||||||
"clang",
|
"clang", # C/C++ development
|
||||||
"scripts",
|
"scripts", # scripts & snippets
|
||||||
"stow"
|
"stow" # --target=~
|
||||||
]
|
]
|
||||||
|
|
||||||
|
# for TUI only setups
|
||||||
|
# e.g. servers that are accessed via SSH only
|
||||||
TUI_PKGS = [
|
TUI_PKGS = [
|
||||||
*BASE_PKGS,
|
*BASE_PKGS,
|
||||||
"fastfetch",
|
"fastfetch", # sys info
|
||||||
"nvim",
|
"nvim", # editor
|
||||||
"shell",
|
"shell", # fish & .bash_profile & shell prompt
|
||||||
"yazi"
|
"yazi" # terminal file manager
|
||||||
]
|
]
|
||||||
|
|
||||||
|
# for all WMs and DEs
|
||||||
GUI_BASE_PKGS = [
|
GUI_BASE_PKGS = [
|
||||||
*TUI_PKGS,
|
*TUI_PKGS,
|
||||||
"kitty",
|
"kitty", # terminal emulator
|
||||||
"ghostty",
|
"ghostty", # alternative terminal emulator
|
||||||
"misc",
|
"misc", # miscellaneous GUI configs (e.g. *-flags)
|
||||||
"mpv",
|
"mpv", # media player
|
||||||
"wallpaper",
|
"wallpaper", # wallpapers & manager
|
||||||
"kvantum",
|
"kvantum", # qt theming
|
||||||
"nwg-look"
|
"nwg-look" # gtk theming
|
||||||
]
|
]
|
||||||
|
|
||||||
|
# for Hyprland setup
|
||||||
HYPRLAND_PKGS = [
|
HYPRLAND_PKGS = [
|
||||||
*GUI_BASE_PKGS,
|
*GUI_BASE_PKGS,
|
||||||
"eww",
|
"eww", # widgets
|
||||||
"hypr",
|
"hypr", # hypr family
|
||||||
"mako",
|
"mako", # notifications
|
||||||
"rofi",
|
"rofi", # application launcher
|
||||||
"waybar",
|
"waybar", # status bar
|
||||||
"wlogout"
|
"wlogout" # logout menu
|
||||||
]
|
]
|
||||||
|
|
||||||
|
# for Niri setup
|
||||||
NIRI_PKGS = [
|
NIRI_PKGS = [
|
||||||
*GUI_BASE_PKGS,
|
*GUI_BASE_PKGS,
|
||||||
"niri",
|
"hypr", # for hyprlock & hypridle
|
||||||
"quickshell",
|
"niri", # wm config
|
||||||
"rofi",
|
"quickshell", # widget & status bar & notifications & ...
|
||||||
"wlogout"
|
"rofi", # application launcher
|
||||||
|
"wlogout" # logout menu
|
||||||
]
|
]
|
||||||
|
|
||||||
PKGS = {
|
PKGS = {
|
||||||
@@ -75,7 +81,7 @@ def switch(session: str):
|
|||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
parser = ArgumentParser(description="Stow configuration packages.")
|
parser = ArgumentParser(description="Stow configuration packages in this repository.")
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
"package",
|
"package",
|
||||||
choices=PKGS.keys(),
|
choices=PKGS.keys(),
|
||||||
|
|||||||
Reference in New Issue
Block a user