Skip to content

Ergonomic, pragmatical dotfiles and scripts for personal usage.

License

Notifications You must be signed in to change notification settings

kutu-dev/nubosa

Repository files navigation

Photo of a cloudy sky

Nubosa

nixpkgs version logo nixOS logo macOS logo Python version logo

Ergonomic, pragmatical dotfiles and scripts for personal usage powered by Nix available on both NixOS and macOS. With an integrated CLI for theme and wallpaper management.

Usage

Prerequisites

  • Have the nix package manager installed (builtin with NixOS).

Steps

First make available the just and git for the current terminal session

nix-shell -p just -p git

It is expected the dotfiles to be located at $HOME/documents/dev/nubosa, so set it up there:

mkdir -p $HOME/documents/dev/nubosa
cd $HOME/documents/dev/nubosa
git clone [email protected]:kutu-dev/nubosa.git

Then bootstrap your nix config to allow the usage of flakes and the new nix command:

just setup

Finally you just need to chose a host and apply it!
There are two different available hosts valhalla, a desktop PC with NixOS, and nirvana, a MacBook Air M2 with nix-darwin, select the one that matches your needs and follow this steps:

For valhalla (NixOS only)

First set your own hardware-configuration.nix:

nixos-generate-config
cp /etc/nixos/hardware-configuration.nix modules/nixos/

And apply the config:

sudo hostnamectl set-hostname valhalla
just switch

For nirvana (macOS only)

Just apply the config and let it run:

sudo scutil --set HostName nirvana
just switch

The cumulus CLI

Nubosa bundles a Python package destinated for theme and wallpaper management at the cumulus directory of the repository. It reads themes defined at dotfiles/cumulus and applies them all over the system, you can:

List all the defined themes:

cumulus theme list

Apply a theme:

cumulus theme apply oxocarbon

Randomly set a wallpaper that matches the aesthetics of the theme:

cumulus wallpaper set

This wallpaper is extracted from a pool located at: $HOME/pictures/wallpapers/<theme-name>.

Personal notes

Imperative configurations that are not generic and may (and probably) need manual adjustment:

Steam (valhalla host only)

  1. Activate compatibility for all titles.
  2. Set GE-Proton as the default Proton runtime.
  3. Add /home/kutu/mounts/bravo as default install point.

Syncthing

  1. Enter the UI at: https://localhost:8384
  2. Disallow anonymous Usage Reporting? No.
  3. No set any password for the web GUI.
  4. Remove default folder with rm -r $HOME/Sync.
  5. Add the other devices.
  6. Set up the following shared directories:
    • $HOME/documents/dev
    • $HOME/pictures/wallpapers
    • $HOME/documents/aorta

Hacking

If you are interested on modifing Nubosa to tailor it to your needs it is recommended to first read the HACKING.md file.

Acknowledgements