Manage the configuration and tools on your workstation without bothering the OS too much
Project description
Mybox
🖥️ This is a box. 📦 And it is mine. 🐱
There are many 🍱 nice things in there. I wouldn't want 🧰 to be without them.
Even if I move 🏠 or work 🏢 I want to be comfortable.
Manage the configuration and tools on your workstation without bothering the OS
too much (maybe your favorite one isn't supported by $WORK
or you have
different ones for different roles).
Values
- Earlier points override latter ones, unless there is a huge gain.
- The system is usable with the software the user specified.
- Meta requirements (e.g. archivers and package managers) are installed the same way user requirements are.
- Everything is installed and upgraded to the latest version every time.
- Superuser access is not required.
Usage
-
Run the bootstrap script:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/koterpillar/mybox/main/bootstrap)"
-
Run
mybox
from the directory with package definitions.For package definition examples, see koterpillar/desktop.
-
To install optional components, add their names as arguments, e.g.
mybox development
.
Development
Pre-requisites (see install-dev for ways to install):
Run ./lint
to check style & types, ./lint --format
to apply
formatting automatically.
Run ./test-script
to execute the project's tests.
Running locally
- Run
poetry install
. - Run
poetry shell
. - In the launched shell, go to the directory with package definitions.
- Run
mybox
with the desired arguments.
Releasing
Releases are done using Semantic Release, see build.yml.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.