Configuration of software I personally use for software development
Hyprland with foot terminal, tmux and neovim
- Add user:
useradd -m -G docker,systemd-journal,users,wheel -k /dev/null -s /usr/bin/zsh cj
sudo -iu cj- Clone the repository
git clone https://github.com/codingjerk/dotfiles.git- Install the config files into your system
python ~/dotfiles/tools/install repo-to-home ALL- Check for missing dependencies:
python ~/dotfiles/tools/doctor- Enable systemd services and timers:
systemctl --user daemon-reload
systemctl --user add-wants niri.service \
gammastep.service \
hypridle.service \
waybar.service \
mako.service \
foot-server.service \
cliphist.service \
swaybg.service \
remind.service
systemctl --user enable --now \
ssh-agent.socket \
battery.timer \
disk.timer \
break-reminder.timer \
systemd-status.timer \
network-status.timer \
random-thai-word.timerWARNING: This repository is tailored for my personal use. I don't recommend installing it on your machine.
If you're not me (lol), just clone this repository and browse the configuration files.
- Generate ssh keys:
ssh-keygen -t ed25519- Import gpg keys:
gpg --import <key>.gpg
gpg --edit-key <key-id>
# trust, 5, y, save- Initialize stores:
git clone cj:private-pass .password-store
git clone cj:ledger-private .ledger
git clone cj:notes-private notes-
Install LSPs for
neovim -
Install
lazy.nvim:
mkdir -p ~/.local/share/nvim/lazy
cd $_
git clone https://github.com/folke/lazy.nvim.git
nvim
:Lazy Install- (optional) Switch to ssh-based git remote:
git remote set-url origin cj:dotfilesPull sources and re-render configs:
git pull
python ~/dotfiles/tools/install repo-to-home ALLThis repository contains:
config-- configuration files and templatessettings.toml-- color palette and per-host settingswallpaper.png-- a wallpapertoolsinstall-- tool to copy and render configuration filesdoctor-- tool to report missing dependencies
scripts-- helper scripts
The repository can be placed anywhere in your home directory.
The install tool has two directional actions:
repo-to-homerenders the repository's configuration files and writes them to the correct locations under your home directory.home-to-repocopies configuration files from your home directory back into the repository, restoring template placeholders where needed.
Both actions require a file selector. Use a configured path relative to your home directory to process one file:
python ~/dotfiles/tools/install repo-to-home .config/niri/config.kdl
python ~/dotfiles/tools/install home-to-repo .config/niri/config.kdlUse the uppercase selector ALL to process every configured file:
python ~/dotfiles/tools/install repo-to-home ALL
python ~/dotfiles/tools/install home-to-repo ALL