# MonakhOS: My general workstation environment Code name given on 2024-05-16 : "MonakhOS" Architecture: - Sway - A single `venv` in dots containing all utilities and libs ## Ansible https://github.com/id101010/ansible-archlinux ## Steps to install - find a new name for the device eg. blackjack - connect to wifi - enable ssh server to access it from the exterior - generate ssh key - add sshkey to forge.lefuturiste.fr ### Generate a unprotected default ssh key ``` ssh-keygen -t ed25519 -C "mbess@blackjack" ``` no passphrase > ECDSA-SK, Ed25519 and Ed25519-SK keys have a fixed length and the -b flag will be ignored. ### Configure ~/.ssh/config ``` # set as default IdentityFile ~/.ssh/unprotected_ed25519 Host * ServerAliveInterval 40 Host forge.lefuturiste.fr user git IdentitiesOnly yes IdentityFile ~/.ssh/unprotected_ed25519 Host aur.archlinux.org IdentityFile ~/.ssh/id_aur User aur ``` ### Clone dots ``` cd ~ git clone git@forge.lefuturiste.fr:mbess/dots .dots ``` ``` cd ~/.dots python3 -m venv venv pip install -r requirements.txt # create symbolic link to access dots ln -s ~/.dots ~/dots ``` ### install yay ``` git clone https://aur.archlinux.org/yay.git cd yay makepkg -si ``` ### configure Zsh https://wiki.archlinux.org/title/Zsh ### configure xremap sudo systemctl daemon-reload sudo systemctl enable --now xremap ### Import and configure GPG keys ### Configure unix password manager using `extra/gopass` ### Setup symbolic links to configs files run the script `setup_dot.sh` ## Shell ### Fish #### install fisher https://github.com/jorgebucaran/fisher use `fisher package` #### fzf fish https://github.com/PatrickF1/fzf.fish require fd and bat #### lfcd https://github.com/gokcehan/lf/blob/master/etc/lfcd.fish ### Zsh https://yewtu.be/watch?v=ud7YxC33Z3w https://github.com/jeffreytse/zsh-vi-mode How to handle different profiles ## Pacman packages defined in dots file arch_packages.yaml ## Sway ### swayidle https://stackoverflow.com/questions/68694093/how-to-prevent-swayidle-from-execution-while-watching-a-film ## How to sandbox monakos on a virtual machine ### Connect with remmina remmina -c spice://127.0.0.1:4354 ### Connect to SSH ssh -p 2222 localhost -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no