My dotfiles are manage by stow
.
To install stow
in an Arch based distributions:
sudo pacman -S stow
And, for example, to use stow
to add my rofi
configurations, you need to be at the root of this repository folder:
cd dotfiles
stow rofi
It only makes a symlink
between the dotfiles target folder and the appropriate path, based on the folder structure, so this repository can also be used with only copy and paste of the folders in the right path.
In this repository, inside the themes
folder, I have some widgets and icon themes that I use.
Right now I 'm using a combination of adw-gtk3
for GTK3
and libadwaita
for GTK-4
, they were modified with a program called Gradience
.
Warning: I made some CSS and config changes to make it look better with my setup, like remove GTK CSD buttons, so my config will change some
gtk
files.
First, install adw-gtk3
:
yay -S adw-gtk3
Because stow
uses relative symlinks to add the configuration files, flatpak programs don't have the filesystem permission to find the original/target files, so they can't read them, we also can't modify the theme file with flatpak Gradience
out of the box for the same reason, so to add the theme config to the system, we have 4 options:
-
Stow: If you don't care about theme support for flatpak programs and you don't want to edit the theme with flatpak Gradience, you can use
stow theme-hipgnose-black
. -
Manual Copy: You need to copy the contents of
theme-hipgnose-black
to the appropriate paths at~/.config
. -
Apply theme with Gradience: You can import the config file from Gradience, the file is inside
dotfiles/gradience/.var/app/com.github.GradienceTeam.Gradience/config/presets/user/
, after that, you can use Gradience to modify and apply the theme to the system. -
Manual symlink with absolute path:
This is the way I do and recommend.
Warning: In the folowing commands I'm assuming your dotfiles folder is named as
dotfiles
, without a.
in the beginning, and it's in the root of your home folder, a.k.a~
.Add flatpak global file access permission to the theme's dotfile folder:
flatpak override --filesystem=~/dotfiles/theme-hipgnose-black:ro --user
Now, make absolute symlinks of the theme's files to both GTK
.config
:GTK3:
ln -s ~/dotfiles/theme-hipgnose-black/.config/gtk-3.0/gtk.css ~/dotfiles/theme-hipgnose-black/.config/gtk-3.0/settings.ini ~/.config/gtk-3.0
GTK4:
ln -s ~/dotfiles/theme-hipgnose-black/.config/gtk-4.0/gtk.css ~/dotfiles/theme-hipgnose-black/.config/gtk-4.0/settings.ini ~/.config/gtk-4.0
And logout from the system after that, for some reason only after a logout the program really receive the permission but I don't know why and it was a pain to understand why the permission wasn't working.
If you want to modify the theme, you need to add file permission to Gradience flatpak program to the respective dotfile folder, so it can read the theme file:
flatpak override com.github.GradienceTeam.Gradience --filesystem=~/dotfiles/gradience --user
Now you can
stow
the config to add the theme file to the Gradience user preset:stow gradience
Pacman wrapper and AUR helper written in go.
sudo pacman -S yay
For colored output, uncomment the Color
line in /etc/pacman.conf
Highly configurable framework window manager.
yay -S awesome-git
Auto-detect connected display hardware and load appropiate X11 setup using xrandr.
yay -S autorandr
To make autorandr
manage notebook lid close, there is a systemd unit autorandr-lid-listener.service
inside autorandr dotfile folder, to make it work:
sudo cp autorandr-lid-listener.service /etc/systemd/system/
sudo systemctl enable --now autorandr-lid-listener.service
Alacritty is the fastest GPU-Accelerated terminal emulator in existence.
yay -S alacritty
zsh is a very advanced and programmable command interpreter (shell) for UNIX.
yay -S zsh
Make zsh the default shell:
chsh -s $(which zsh)
fzf
Command-line fuzzy finder:
yay -S fzf
Antigen is a small set of functions that help you easily manage your shell (zsh) plugins.
yay -S antigen-git
First install nvm
from AUR
:
yay -S nvm
Source nvm script in .bashrc
:
echo 'source /usr/share/nvm/init-nvm.sh' >> ~/.bashrc
exec $SHELL
Install latest node
and npm
:
nvm install node
A window switcher, application launcher and dmenu replacement.
sudo pacman -S rofi
Powerful yet simple to use screenshot software.
yay -S flameshot
Screen saver and locker for the X Window System.
yay -S xscreensaver
Visual Studio Code. Editor for building and debugging modern web and cloud applications.
yay -S visual-studio-code-bin
Install vscode extensions
~/dotfiles/install-code-extensions.sh
List extensions with install command
code --list-extensions | xargs -L1 echo code --install-extension
Monospaced font with programming ligatures.
yay -S otf-fira-code
To solve I had to write
Section "Device"
Identifier "Intel Graphics"
Driver "intel"
Option "DRI" "2"
EndSection
in /etc/X11/xorg.conf.d/20-intel.conf
https://unix.stackexchange.com/questions/524205/help-chromium-display-frozen-but-the-app-keeps-working https://wiki.archlinux.org/index.php/Intel_graphics#DRI3_issues
To solve it, I executed install_pulse
Install the libsecret
package. (Already installed in Manjaro)
git config --global credential.helper /usr/lib/git-core/git-credential-libsecret