My personal dotfiles.
You need to make sure the following software is installed for the dotfiles to work properly:
The dotfiles also come with a Hyprland configuration, so you might want to install that as well.
sudo pacman -S stow neovim zsh fzf tmux git ripgrep
To install Hyprland, you can use the AUR package hyprland-git
.
I recommend using an AUR helper like yay
:
pacman -S --needed git base-devel
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
Then, install hyprland-git
:
yay -S hyprland-git
You'll also need waybar
, which is available in the official repositories:
sudo pacman -S waybar
sudo apt install stow neovim zsh fzf tmux git ripgrep
First of all, my condolences for wanting to install Hyprland on Ubuntu. You'll need to manually build Hyprland from source, but there's a guide on the Hyprland wiki.
Waybar has a PPA, so you can install it like this:
sudo add-apt-repository ppa:nschloe/waybar && sudo apt update
sudo apt install waybar
Add the following packages to your configuration.nix
:
environment.systemPackages = with pkgs; [
stow
neovim
zsh
fzf
tmux
git
ripgrep
];
programs.zsh.enable = true;
To enable Hyprland and install waybar, add the following to your configuration.nix
:
programs.hyprland.enable = true;
environment.systemPackages = with pkgs; [
waybar
];
Ensure Homebrew is installed. zsh is already installed on MacOS, so you only need to install the other dependencies:
brew install stow neovim fzf tmux git ripgrep
Make sure you have the prerequisites installed and change your cwd to $HOME
:
cd $HOME
Then, clone the repository:
git clone https://github.com/benpueschel/dotfiles.git && cd dotfiles
Now, you can use GNU Stow to symlink the dotfiles you want to use:
stow -S alacritty git hyprland nvim scripts ssh tmux zsh
This will symlink all dotfiles to the parent directory (which is $HOME
because we cloned the repo into $HOME/dotfiles
).
If you want to put the dotfiles in a different directory, you can use stow like this:
stow -S alacritty git hyprland nvim scripts ssh tmux zsh -t $HOME
The -t
flag specifies the target directory, which must always be $HOME
.
Now you can change your default shell to zsh and restart your shell:
chsh -s $(which zsh)
exec zsh
Aaand you're good to go! 🚀