Main purpose of this README is , I usually just forget what changes I've done , so ...
To setup most of the things at ones : (errors may raise out of nowhere)
sh -c "$(curl -fsSL https://raw.githubusercontent.com/cybergaz/scripts/main/hypr_setup.sh)"
make wlroots wayland-protocols pkgconf ninja patch catch2 waybar-hyprland-git brightnessctl pipewire pipewire-alsa pipewire-pulse pipewire-jack wireplumber xdg-desktop-portal-wlr grim slurp sddm hyprland-git foot
wofi alacritty nemo ranger mako neofetch btop viewnior swaybg swayidle swaylock-effects waylogout-git swww zoxide cliphist wtype wl-clipboard polkit-gnome grim slurp satty-bin
- remove every package named
xdg-desktop-portal-*
, check'em by :
pacman -Q | grep xdg-desktop-portal-
- now just install :
yay -S pipewire wireplumber xdg-desktop-portal-hyprland-git
- more detailed docs : someone's notes
yay -S polkit-gnome
- and then just initiate it your
hyprland.conf
exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
- Download your fav theme and place the theme folder at :
/usr/share/themes
or.local/share/themes
- i just use
yay -S layan-gtk-theme-git
- to set it up , just run
gsettings set org.gnome.desktop.interface gtk-theme Layan-Dark
- for dark theme , you have to make changes at your :
~/.config/gtk-3.0/settings.ini
-
- settings.ini -->
gtk-application-prefer-dark-theme=true
>k-theme-name=Layan-Dark
- settings.ini -->
- Download and place in
/usr/share/icon
( i use Kora btw )
yay -S kora-icon-theme
- and then just run
gsettings set org.gnome.desktop.interface icon-theme {theme-folder}
- Download and put them in :
/usr/share/icons/
- i use
yay -S catppuccin-mocha-dark-cursors
- and then edit
/usr/share/icons/default/index.theme
- also
gsettings set org.gnome.desktop.interface cursor-theme {theme-folder}
- Download ttf files and put them in :
/usr/local/share/fonts
- then give'em necesarry permissions like :
chmod 444 and 555
refer to powerlevel10k github readme font section for mesloLGS-nf fonts
- Download sddm theme you want , and place them at :
/usr/share/sddm/themes/
- set the theme , at
/usr/lib/sddm/sddm.conf.d/default.conf
- if that doesn't work , check out this place :
/etc/sddm.conf.d/
- Download and place at :
/usr/share/grub/themes/
- then just edit
/etc/default/grub
: GRUB_THEME=/usr/share/grub/themes/{theme_name}/theme.txt
- a lil
grub-update
and you are good to go
yay -S wofi wtype wl-clipboard ttf-twemoji-color noto-fonts-emoji
git clone https://github.com/cybergaz/scripts
cd scripts/wofi-emoji
sh wofi-emoji.sh
mtpfs --> for media transfer protocol
jmtpfs --> for later version supports
gvfs-mtp --> for automount and all ( usb android file transfer )
gvfs-gphoto2 --> for picture transfer protocol
- Alter power key,lid, idle related actions at
/etc/systemd/logind.conf
- Install
powertop and tlp
--> for power management in laptops
- If you're facing pulseaudio & bluetooth related issue then, uninstall everything related to pulseaudio , pipewire and bluetooth ( bluez and all.. ) and then install :
pulseaudio pulseaudio-bluetooth pulseaudio-ctl bluez bluez-utils blueman-git
- For nix packages search :
nix-channel --add https://nixos.org/channels/nixpkgs-unstable
sudo nix search nixpkgs --extra-experimental-features nix-command --extra-experimental-features flakes
nix-channel --update
nix-env -qaP --description | awk '{$2 = ":"; print $0;}' > "nps.cache"
- To get rid of that 90s shutdown issue :
-
- head to the
/etc/systemd/system.conf
and overwrite these line ->
- head to the
DefaultTimeoutStartSec=1s
DefaultTimeoutStopSec=1s
DefaultTimeoutAbortSec=
DefaultDeviceTimeoutSec=1s
- install necessary packages
yay -S pipewire pipewire-alsa pipewire-pulse pipewire-jack
- Stop PulseAudio services and enable pipewire services:
systemctl --user stop pulseaudio.socket
systemctl --user stop pulseaudio.service
systemctl --user disable pulseaudio.socket
systemctl --user disable pulseaudio.service
systemctl --user enable pipewire.socket
systemctl --user enable pipewire.service
systemctl --user start pipewire.socket
systemctl --user start pipewire.service
- If you are facing bluetooth headset
mic
related issue , thentry changing profile to HSP/HFP
using pavucontrol
- To adjust the
ownership and permissions of drives
: -
- mount the partition first at desired location say /mnt and then the following commands
sudo chown -R yourusername:yourusername /mnt
sudo chmod -R u+w /mnt
sudo usermod -aG dis,storage,uuidd yourusername
- create
/etc/iwd/main.conf
with following content :
[General]
EnableNetworkConfiguration=true
[Network]
EnableIPv6=true
- enable following services
sudo systemctl enable --now systemd-networkd
sudo systemctl enable --now systemd-resolved
sudo systemctl enable --now iwd
# important for some packages that relies only on resolv.conf (which is a NetworkManager thing)
sudo ln -rsf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
NOTE : To provide DNS for software that reads
/etc/resolv.conf
(which is created and used by NetworkManager) , such asGo-lang softwares
like github-cli , some web-browsers etc, we need to link/run/systemd/resolve/stub-resolv.conf
(which is created and used by IWD) to resolv.conf
more detailed docs : arch wiki systemd-resolved
- create
/etc/systemd/network/20-wired.network
with following content (change the name of ethernet interface to yours)
[Match]
Name=enp0s20f0u5
[Network]
DHCP=yes
- run following cmds
sudo rm -rf /etc/pacman.d/gnupg
sudo pacman-key --init
sudo pacman-key --populate
sudo pacman -S archlinux-keyring
- open
/etc/security/faillock.conf
file and look for variable deny and unlock-time and change them accordingly