aboutsummaryrefslogtreecommitdiff

RhattOS - A Lightweight Software Distribution

RhattOS is a Debian-based distro shipped as a a repository with locally-installed applications which can further be used to manage the system it's installed into and also bootstrap other systems.

This repository hosts locally installed applications inside a home directory. Some of these applications can also manage other personal configurations such as dotfiles.

It a starting point to keep all configuration centralized in a single versioned tree, so if one need to setup an account in a new machine -- be it a server or personal computer -- she just need to clone this little thing and run a couple commands to have the usual configuration ready to use.

In other words... this is where everything begins. The way I bootstrap my whole digital environment across machines along with tools that helps me manage my computing machinery. The metaproject, the mother of all my folder structure that unfolds from here.

If you don't like my config -- which might be the case as this kind of thing is so personal -- you still can use my approach to do the same management with your own stuff. In that case, fork this repository and replace my setup with your own submodules, dotfiles and infection procedure :)

Installation

Get the code:

git clone --recursive https://git.fluxo.info/rhatto/apps $HOME/apps

Then check the source integrity of the latest release:

/usr/bin/git -C $HOME/apps verify-commit HEAD

Note that /usr/bin/git is called to avoid any other git wrappers or aliases you might have available on your shell.

To use a project distributed by this repository simply add it's folder into your $PATH.

Infection

You might make this repository takeover your $HOME. Check Inception README for details.

Folder structure

This repository also plays well with the following $HOME folder structure:

apps: this repository
code: other software projects
data: media assets (git-annex and other repositories)
file: other, non-software projects
load: download area
mail: maildir
temp: temporary folder

Note that all folder names have:

  • The same lenght so I get free alignment on lists.
  • Lowercase characters to save typing.