35 lines
1.1 KiB
Markdown
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)
|