140 lines
3.7 KiB
Bash
140 lines
3.7 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
# Debian packages for hyprland have hit unstable and we attempt to build
|
|
# debs locally for devuan using gbp.
|
|
|
|
DOTFILE_SRC="/space/code_repositories/hypr/dotfiles/Hyprland-config"
|
|
|
|
# For sound and screensharing
|
|
# autostart with
|
|
sudo apt-get install -y \
|
|
pipewire \
|
|
wireplumber
|
|
|
|
sudo apt-get install -y \
|
|
waypipe \
|
|
brightnessctl \
|
|
brightness-udev \
|
|
playerctl \
|
|
shutter \
|
|
wf-recorder \
|
|
wl-clipboard \
|
|
zathura \
|
|
ranger
|
|
# swaylock
|
|
|
|
# team-hyprland packages (I made that up, there is a team-sway)
|
|
sudo apt-get install -y \
|
|
libudis86-0 \
|
|
udcli \
|
|
hyprwayland-scanner \
|
|
libhyprlang2 \
|
|
libhyprcursor0 \
|
|
libhyprutils0 \
|
|
hyprcursor-util \
|
|
hyprland-protocols \
|
|
hyprland \
|
|
hyprland-backgrounds \
|
|
hyprpaper
|
|
|
|
## ranger - Console File Manager
|
|
cp -a ${DOTFILE_SRC}/ranger ~/.config
|
|
|
|
## zathura document viewer
|
|
cp -a ${DOTFILE_SRC}/zathura ~/.config
|
|
|
|
## swaylock config
|
|
cp -a ${DOTFILE_SRC}/swaylock ~/.config
|
|
|
|
## hyprland config
|
|
mv ${HOME}/.config/hypr/hyprland.conf ${HOME}/.config/hypr/hyprland.conf.bak
|
|
cp -a ${DOTFILE_SRC}/hypr/* ${HOME}/.config/hypr/
|
|
|
|
## hyprpaper config
|
|
conf_print_hyprpaper() {
|
|
cat <<-EOF
|
|
preload = ${HOME}/Pictures/Wallpaper/default.png
|
|
# if more than one preload is desired then continue to preload other backgrounds
|
|
preload = ${HOME}/Pictures/Wallpaper/default.png
|
|
# .. more preloads
|
|
|
|
# set the default wallpaper(s) seen on initial workspace(s) --depending on the number of monitors used
|
|
wallpaper = monitor1,${HOME}/Pictures/Wallpaper/default.jpg
|
|
|
|
# if more than one monitor in use, can load a 2nd image
|
|
# wallpaper = monitor2,/path/to/next_image.png
|
|
# .. more monitors
|
|
|
|
# enable splash text rendering over the wallpaper
|
|
splash = true
|
|
|
|
# fully disable ipc
|
|
# ipc = off
|
|
EOF
|
|
}
|
|
conf_print_hyprpaper | tee ~/.config/hypr/hyprpaper.conf
|
|
|
|
# Add the wallpaper images
|
|
PAPER_DIR="${HOME}/Pictures/Wallpaper"
|
|
mkdir -p ${PAPER_DIR}
|
|
cp ${DOTFILE_SRC}/Wallpaper/* ${PAPER_DIR}/
|
|
ln -s ${PAPER_DIR}/samurai_strike.jpg ${PAPER_DIR}/default.jpg
|
|
ln -s ${PAPER_DIR}/street-tn.png ${PAPER_DIR}/default.png
|
|
|
|
## Status bar
|
|
# [eww](https://elkowar.github.io/eww/) rust based not packaged.
|
|
#
|
|
# waybar
|
|
# exec-once=waybar
|
|
sudo apt-get install -y \
|
|
waybar
|
|
|
|
## waybar config
|
|
# cp -a /etc/xdg/waybar into ~/.config/
|
|
# sed -i 's|sway\/workspaces|hyprland\/workspaces/g' ~/.config/waybar/config
|
|
# sed -i 's|sway\/workspaces|hyprland\/workspaces/g' ~/.config/waybar/config.jsonc
|
|
|
|
# or use a pre configured set of dotfiles as a starting point:
|
|
# https://github.com/knightfallxz/Hyprland-config
|
|
cp -a ${DOTFILE_SRC}/waybar ~/.config
|
|
|
|
# - default have pulseaudio needs to be changed to pipewire/wireplumber
|
|
# https://github.com/Alexays/Waybar/wiki/
|
|
# https://github.com/Alexays/Waybar/wiki/Module:-WirePlumber
|
|
# https://github.com/Alexays/Waybar/wiki/Module:-Hyprland
|
|
#
|
|
|
|
# application launcher for wlroots based wayland compositors
|
|
sudo apt-get install -y \
|
|
wofi
|
|
|
|
cp -a ${DOTFILE_SRC}/wofi ~/.config
|
|
|
|
# XDG Portal - Packaged on gitea
|
|
sudo apt-get install -y xdg-desktop-portal-hyprland
|
|
|
|
# Notification daemon - pick one
|
|
# mako is minimal
|
|
# swaync less so.
|
|
sudo apt-get install -y \
|
|
dunst
|
|
# sway-notification-center \
|
|
# mako-notifier
|
|
|
|
cp -a ${DOTFILE_SRC}/dunst ~/.config
|
|
|
|
# Terminal - Packaged or configured in automate scripts here for reference.
|
|
# More kitty binds in hyprland.conf examples than wezterm.
|
|
# sudo apt-get install -y \
|
|
# kitty \
|
|
# wezterm
|
|
# cp -a ${DOTFILE_SRC}/kitty ~/.config
|
|
|
|
# Authenitication Agent
|
|
# /etc/xdg/autostart/polkit-kde-authentication-agent-1.desktop
|
|
# autostart it with
|
|
# $ exec-once=/usr/lib/polkit-kde-authentication-agent-1
|
|
# exec-once=/usr/lib/x86_64-linux-gnu/libexec/polkit-kde-authentication-agent-1
|
|
sudo apt-get install -y \
|
|
polkit-kde-agent-1
|