automate/020_hyprland_deps.sh

185 lines
8.3 KiB
Bash

# Remove unused kernel headers to prevent rebuild of zfs modules
# sudo apt-get remove -y linux-headers-6.11.2-amd64
# sudo apt-get remove -y linux-headers-6.12.5-amd64
wget # retrieves files from the web
unzip # De-archiver for .zip files
gum # Tool for glamorous shell scripts
rsync # fast, versatile, remote (and local) file-copying tool
git # fast, scalable, distributed revision control system
figlet # Make large character ASCII banners out of ordinary text
xdg-user-dirs # tool to manage well known user directories
xdg-desktop-portal-gtk # GTK+/GNOME portal backend for xdg-desktop-portal
xdg-desktop-portal-hyprland # XDG Desktop Portal backend for Hyprland
kitty # fast, featureful, GPU (opengl3) based terminal emulator
qt6-wayland # Qt 6 Wayland platform plugin
fastfetch # neofetch-like tool for fetching system information
eza # Modern replacement for ls
python3-pip # Python package installer
python3-screeninfo # Fetch location and size of physical screens
tumbler # D-Bus thumbnailing service
brightnessctl # Control backlight brightness
# nm-connection-editor # network management framework (connection configuration editor)
# network-manager-applet # network management framework (notification area applet)
# pavucontrol # PulseAudio Volume Control
# policykit-1-gnome # authentication agent for PolicyKit - GOING AWAY
mate-polkit # MATE gtk3 authentication agent for PolicyKit-1
xfce-polkit # Lightweight gtk3 PolicyKit authentication agent for Xfce
imagemagick # image manipulation programs -- binaries
jq # lightweight and flexible command-line JSON processor
xclip # command line interface to X selections
neovim # heavily refactored vim fork
htop # interactive processes viewer
blueman # Graphical bluetooth manager
grim # command-line utility to make screenshots of Wayland desktops
slurp # cli utility to select a region in a Wayland compositor
cliphist # wayland clipboard manager (program)
qt6ct # Qt6 Configuration Tool
zsh # shell with lots of features
fzf # general-purpose command-line fuzzy finder
papirus-icon-theme # Papirus open source icon theme for Linux
breeze # Default Plasma theme (Metapackage)
flatpak # Application deployment framework for desktop apps
gvfs # userspace virtual filesystem - GIO module
wlogout # logout menu for wayland environments
bibata-cursor-theme # Bibata is open source, compact, and material designed cursor set
tesseract-ocr # Tesseract command line OCR tool
tesseract-ocr-eng # tesseract-ocr language files for English
# otf-font-awesome
fonts-font-awesome # iconic font designed for use with Twitter Bootstrap
# ttf-fira-sans ttf-fira-code ttf-firacode-nerd
fonts-firacode # Monospaced font with programming ligatures
power-profiles-daemon # D-Bus service for power profile handling
vlc # multimedia player and streamer
hyprland # Dynamic tiling Wayland compositor
# hyprland-completions # Hyprland is a dynamic tiling Wayland compositor based on wlroots
hyprland-backgrounds # Set of backgrounds packaged with the hyprland Wayland compositor
hyprpaper # Wallpaper utility for Hyprland
hyprlock # Screen locking utility for Hyprland
hypridle # Idle daemon for Hyprland
hyprpicker # wlroots-compatible Wayland color picker
hyprcursor-util # Utility to manipulate hyprcursor and xcursor themes
libaquamarine9 # Light-weight rendering library for Linux (binary files)
libnotify-bin # sends desktop notifications to a notification daemon (Utilities)
waybar # Highly customizable Wayland bar for Sway and Wlroots based compositors
sway-notification-center # simple notification daemon for sway
swaylock # Screen locker for Wayland
wlogout # logout menu for wayland environments
wl-clipboard # command line interface to the wayland clipboard
dunst # dmenu-ish notification-daemon
nwg-bar # GTK2-based button bar for wlroots-based compositors (program)
nwg-clipman # GTK2-based GUI for cliphist
nwg-displays # output management utility for Wayland compositors like Sway
nwg-hello # GTK2-based greeter for the greetd daemon
nwg-look # GTK2 settings editor for wlroots environments like Sway
# nwg-dock-hyprland # https://github.com/nwg-piotr/nwg-dock-hyprland
# Hyprland Missing
# nwg bar, clipman displays, hello and look are available debian.
# Missing dock
# nwg-dock-hyprland # build from git:
# sudo apt update
sudo apt install libatk1.0-dev libgtk-4-dev wayland-protocols
BUILD_DIR=/var/tmp/build_nwg-dock-hyprland/nwg-dock-hyprland
mkdir -p ${BUILD_DIR}
cd ${BUILD_DIR}
git clone --depth 1 https://github.com/nwg-piotr/nwg-dock-hyprland
cd nwg-dock-hyprland
make build
sudo checkinstall make install
# https://github.com/anufrievroman/waypaper
# GUI wallpaper setter for Wayland and Xorg window managers.
# It works as a frontend for popular wallpaper backends like swaybg,
# awww, wallutils, hyprpaper, mpvpaper, xwallpaper and feh
# waypaper # rebuild hyprpaper - Wallpaper utility for Hyprland
pipx install waypaper # fontend to X and waylond wallpaper backends
# python-pywalfox # theme color matching to wallpaper
pipx install pywal pywalfox
hyprpaper # Wallpaper utility for Hyprland
# hyprland-completions # added to the outputs of the debian/control built locally pulled from gitia
# Missing
# wezterm # rebuild locally, pulled from gitea
# qt5-wayland = old nocontrol hyprlang>=0.6.0
libhyprutils10 # Utilities used across the Hyprland ecosystem (library)
libwayland-client0 # wayland compositor infrastructure - client library
libhyprtoolkit5 # Modern, wayland-native C++ GUI toolkit -- binary files
libhyprwire2 # Fast and consistent wire protocol for IPC -- binary files
libpixman-1-0 # pixel-manipulation library for X and cairo
libdrm2 # Userspace interface to kernel DRM services -- runtime
# pacseek - arch specific
grimblast-git # screenshoting
BUILD_DIR=/var/tmp/build_grimblast-git/grimblast-git
mkdir -p ${BUILD_DIR}
cd ${BUILD_DIR}
git clone --depth 1 https://github.com/hyprwm/contrib/tree/main/grimblast
cd grimblast
make
sudo checkinstall make install
# rofi - is in sid - I needed to build from dsc for ceres
bash /var/tmp/automate/build_deb_from_dsc_with_update.sh /var/tmp/build_rofi
# python-gobject: https://gnome.pages.gitlab.gnome.org/pygobject/getting_started.html#ubuntu-logo-ubuntu-debian-logo-debian
python3-gi
python3-gi-cairo
libgirepository-2.0-dev # is required when installing from PyPI.
gir1.2-gtk-4.0
# zsh-completions
conf_print_unstable_source() {
cat <<-EOF
Types: deb
URIs: http://download.opensuse.org/repositories/shells:/zsh-users:/zsh-completions/Debian_Unstable/
Suites: /
Signed-By: /etc/apt/trusted.gpg.d/shells_zsh-users_zsh-completions_unstable.gpg
EOF
}
conf_print_unstable_source | sudo tee sources.list.d/zsh-completitions_unstable.sources
curl -fsSL https://download.opensuse.org/repositories/shells:zsh-users:zsh-completions/Debian_Unstable/Release.key |
gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/shells_zsh-users_zsh-completions_unstable.gpg >/dev/null
conf_print_testing_source() {
cat <<-EOF
Types: deb
URIs: http://download.opensuse.org/repositories/shells:/zsh-users:/zsh-completions/Debian_Testing/
Suites: /
Signed-By: /etc/apt/trusted.gpg.d/shells_zsh-users_zsh-completions_testing_testing.gpg
EOF
}
conf_print_testing_source | sudo tee sources.list.d/zsh-completitions_testing.sources
curl -fsSL https://download.opensuse.org/repositories/shells:zsh-users:zsh-completions/Debian_Testing/Release.key |
gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/shells_zsh-users_zsh-completions_testing.gpg >/dev/null
sudo apt-get update && sudo apt-get install -y zsh-completions
# swww - animated wallpaper daemon for wayland
# renamed to awww
sudo apt-get install liblz4-dev
BUILD_DIR=/var/tmp/build_awww/awww
mkdir -p ${BUILD_DIR}
cd ${BUILD_DIR}
git clone --depth 1 https://codeberg.org/LGFae/awww
cd awww
cargo build --release
sudo checkinstall bash -c "cp target/release/awww target/release/awww-daemon /usr/local/bin"
zsh-completions # Additional completion definitions for Zsh.