~vdemeester/home

💻 systems and tools configuration monorepo
tools/emacs: enhance vc-mode 🙃
pkgs/ko: 0.5.2 -> 0.6.0
users/vincent: enable spotifyd…

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~vdemeester/home
read/write
git@git.sr.ht:~vdemeester/home

You can also use your local clone with git send-email.

#Table of Contents

  1. What is home
  2. Installation
  3. Organization of the repository
  4. References
  5. COPYING

img

#What is home

home is the declarative configuration of my servers, desktops and laptops. This project is based on the NixOS operating system and uses home-manager to manage my dotfiles, for both NixOS and non-NixOS hosts (like WSL).

This repository is the monorepo for my personal tools and the declarative configuration of my servers, desktops and laptops. It is based on the NixOS operating system and home-manager (and some scripts) to manage my dotfiles, for both NixOS and non-NixOS hosts (like Fedora, …).

It is fully reproducible (utilizing niv) and position-independent, meaning there is no moving around of configuration.nix. For the configurations' entry points see the individual systems, as well as default.nix.

This will be a all-time work-in-progress, so please beware that things might change dramatically or even not working anymore 😛.

#TODO Installation

todo: rework that part, link to the docs folder

#Organization of the repository

todo: rework that part

This is probably gonna be a moving target, but this is how it looks (or should look soon-ish 👼):

  • docs: holds documentation about this code, literate configuration, see literate configuration. make publish will publish the README.org and the docs folder to my website.
  • lib: shared code used during configuration (mostly nix code).
  • machines: configuration per machines
  • modules: holds nix modules (services, programs, hardware, profiles, …)
  • overlays: holds nix overlays
  • pkgs: holds nix packages (those should migrate under overlays or on nur-packages)
  • secrets: holds non-shareable code, this folder is ignored and make commands will try to populate this. If it's empty, the rest of configuration is still meant to work but will contain empty secrets (or random ones).
  • tmp: things to… organize (e.g. where I import my other legacy configuration)

As I'm slowly, but surely, going to have org-mode files for literate configuration files in this repository, I have to think of how to organize files in order to end up with one huge file. The goal of having those org-mode files, is mainly to document my configuration and publish it, most likely on sbr.pm.

#References

Repositories

#COPYING

Copyright (c) 2018-2020 Vincent Demeester vincent@sbr.pm

This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This file is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this file. If not, see http://www.gnu.org/licenses/.