Personal dotfiles and configuration management for Ubuntu Mate 24.04.
Install required packages:
sudo apt update && sudo apt install afl++ bat bear btop cloc exa emacs git htop hunspell hunspell-en-us hunspell-fr hunspell-fr-classical hyperfine icdiff ncdu parallel ripgrep silversearcher-ag ssh tree xclip xmonad zsh
Consider installing these additional tools:
Clone and deploy the configuration:
git clone https://github.com/fablhx/dotfiles.git "${HOME}/config"
cd "${HOME}/config"
make clean
make build
The build process will automatically:
- Copy configuration files to
_build/
directory - Create symlinks in your home directory
- Compile Emacs and XMonad configurations
- Set up git repository in
_build/
- Configure gsettings for XMonad
If XMonad compilation fails during build:
cd "${HOME}/config/_build/xmonad"
xmonad --recompile
Configure MATE to use XMonad:
gsettings set org.mate.session.required-components windowmanager xmonad
gsettings set org.mate.session required-components-list "['windowmanager', 'panel']"
gsettings set org.mate.mate-menu hot-key ''
gsettings set com.solus-project.brisk-menu hot-key ''
Install ShellCheck for shell script linting:
sudo apt install cabal-install
cabal update
mkdir -p "${HOME}/work/git"
pushd "${HOME}/work/git"
git clone https://github.com/koalaman/shellcheck.git
pushd shellcheck
cabal install
popd
popd
Install LaTeX packages for document processing:
sudo apt-get install texlive-latex-base texlive-fonts-recommended texlive-fonts-extra texlive-latex-extra
After installation, use these make targets:
make build
- Build and install configuration filesmake clean
- Remove installed configuration filesmake status
- Show current configuration status
- Shell: Bash and Zsh with custom prompts and Git integration
- Editor: Emacs with extensive customization
- Terminal: Tmux configuration with custom keybindings
- Window Manager: XMonad with MATE integration
- Version Control: Git with aliases and enhanced diff tools
- Development: Clang-format, Python, OCaml tooling