setup-cockpit/notes.md

35 lines
1.1 KiB
Markdown

# `requirements.txt`
* cli-ui -> build user interface in the terminal
* colorama -> dependency of cli-ui
* unidecode -> dependency of cli-ui
* ruamel.yaml -> load and dump yaml with python
* path.py -> create path objects (alternative to os.path)
# `bootstrap.sh`
* installs pip
* uses pip to install from requirements.txt
* installs rustup
* uses cargo to install fd-find and exa
* copies xkb-symbols: https://medium.com/@damko/a-simple-humble-but-comprehensive-guide-to-xkb-for-linux-6f1ad5e13450
# `configs.yml`
* holds the symlinks, git clones and config writes
# `install.py`
## main()
* parses args: undefined number of programs as a list
* has a flag to overwrite (--force)
* Installer is a class, --force flag is passed to constructor
* runs Installer.install with the programs list
## class Installer()
* force defaults to False
* self.conf -> load `configs.yml`
* self.this_dir = getcwd()
* self.home = ~ (expanduser)
* self.force = force
* install():
- if no program in list, programs are found in self.conf
- for each program, run install_program(program)
* install_program(program)