config/README.org

127 lines
3.5 KiB
Org Mode

#+title: Cross-Platform Configuration Files
This is a list of cross-platform configuration files which can be placed in
~.config~ directory and enabled at will.
* Installation
Install all the packages listed below. Then,
#+begin_src
cd ~/.config
git init
git remote add origin $SOURCE
git pull origin main
#+end_src
** Doom emacs
Install via (can also be placed in ~.emacs~ directory)
#+begin_src bash
git clone --depth 1 https://github.com/doomemacs/doomemacs ~/.config/emacs
~/.config/emacs/bin/doom sync
~/.config/emacs/bin/doom env
#+end_src
** Fish
Install and set the default shell to ~fish~.
** Utilities
- ~alacritty~: terminal emulator
Note that in order to set this as the default terminal, you may need to put
the following in ~~/.config/kdeglobals~:
#+begin_src
[General]
TerminalApplication
#+end_src
- ~mpd~: Music player daemon
#+begin_src sh
systemctl enable --user mpd
systemctl start --user mpd
#+end_src
Optionally, install ~mpc~
- ~cantata~: Controls mpd (other clients are acceptable too)
- ~btop~/~htop~: Process monitor
*** Screenfetch
- ~neofetch~: Screenfetch
- ~macchina~ (aur): Another screenfetch
* Hyprland Desktop Environment
** Login Manager
The login manager is not managed by this configuration but mentioned here since
it interacts with the desktop environment. For ~hyprland~, ~sddm~ is
recommended.
- ~sddm~: Enable ~sddm.service~
A note about themes: The themes must be placed in ~/usr/share/sddm/themes~.
Then in ~/etc/sddm.conf~, enable the relevant theme. By default the breeze
theme comes with ~plasma-workspace~ which is very bloated to install, so
consider some of the alternative themes.
** Fonts
- ~otf-font-awesome~: Needed for ~waybar~ to render icons
- Noto Sans/Serif: System font
** Hyprland
Note: Setup does not work with NVIDIA GPU without some tweaks.
- [[https://wiki.archlinux.org/title/wayland][wayland]]: display manager: ~wayland~, ~xorg-xwayland~
- [[https://wiki.archlinux.org/title/Hyprland][hyprland]]: window manager
- ~waybar~: Status bar, use ~waybar-hyprland-git~ AUR repo to enable clicking!
- ~eww-wayland~: Another status bar, requires ~socat~ to listen for hyprland events.
Until [[https://github.com/elkowar/eww/issues/111][tray support]] has been added to ~eww~ in a stable manner, tray will be handled with waybar.
- ~hyprpaper~: Wallpaper engine
The command to set a wallpaper: ~hyprctl hyprpaper wallpaper "$DISPLAY,$FILE"~
- [[https://github.com/Horus645/swww][swww]]: Alternate wallpaper engine
Note that ~~/.config/hypr/wallpapers~ must have jpeg files ~{1..8}.jpg~. A
handy command can be used crop and resize images:
#+begin_src bash
convert $IN \
-resize 3840x2160^ \
-gravity center \
-extent 3840x2160 \
$OUT
#+end_src
- ~swaync~: Notification server
The command for changing keyboard layouts is handled by ~fcitx5~.
** Utilities
- ~wofi~: finding programs, drop in replacement for ~rofi~
- ~grimblast~: Screenshot engine
- ~dolphin~: File explorer
- ~swaylock-effects~: A simple lockscreen
- ~wl-clipboard~: Provides copying
- ~blueman~: Bluetooth connector
*** Configuration
- ~lxappearance~: Used to configure GTK3 themes
- ~nwg-look~: Configures cursor
- ~wev~: Wayland event interceptor useful for determining keybinds
* Dot Files
All the configurations which must appear as dot files are not included:
- ~.bashrc~
- ~.vimrc~: Workaround is to install NeoVim
- ~.spacemacs~
The following default files are not included for the same reason:
- ~.astylerc~
- ~.clang-format~
- ~.latexmkrc~