My own nixpkgs (for nix + home-manager). Used for nix on my current Ubuntu Setup. Lives inside ~/.config/nixpkgs
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Daniel Siepmann 7682f47e0f
Update vdirsync calendars
Remove sync to own calendars.
Always fetch from original source to local.
3 days ago
.git-crypt Add 1 git-crypt collaborator 1 year ago
assets Add YouTube as search engine to Firefox 1 week ago
gpg/publickeys Migrate GPG to ni / home-manager 1 year ago
home Update vdirsync calendars 3 days ago
overlays Remove overlay as khal is working again 1 month ago
shells Adjust project specifics 4 weeks ago
systems/hikari Strictly define how much documentation should be generated 4 weeks ago
.gitattributes Fix broken userContent cryption 1 month ago
.gitignore Configure registry for customer projects 1 year ago
config.nix Allow installation of old software 2 weeks ago
home.nix Remove email handling via nix 1 week ago
readme.rst Adjust readme 2 months ago


nixpkgs / nix home-manager

I currently use Ubuntu and installed nix alongside. This repository contains my personal ~/.config/nixpkgs folder, for sharing, inspiration and retrieving feedback.

This includes home.nix to maintain home-manager, see:


This is my personal setup for my local laptop running Ubuntu. I share this for free so everyone can have a look and inspiration or provide feedback to me.

This is not intended to be used by anyone else just by copy and pasting or cloning.


Install (clone) into ~/.config/nixpkgs.

Create ~/.config/home-manager and create a symlink from ~/.config/nixpkgs/home.nix to ~/.config/home-manager/home.nix.

Install home-manager see: Execute home-manager switch

Folder structure

The folder overlays contains overlays for nix itself. E.g. alter packages like patching.

The folder home is related to extras for home-manager. It has the following sub folder:


Holds configuration files. home-manager doesn't provide modules for all programs.


Holds nix modules. Not all programs provide modules out of the box. I add my own here, which I might create PRs for in future.


Holds custom nix packages. Not all programs are available. Foreign programs are added here. Custom programs / scripts are added within subfolder custom.


Holds home-manager programs. entries. Each file corresponds to a single program.


Holds home-manager services. entries. Each file corresponds to a single service.


Holds files for most home.* modules. I don't like to clutter a single file with to many entries. Instead home.nix loads files from within here. Each file name should correspond to the home sub option / module.


Holds overlays for existing packages. E.g. in order to patch them.


Holds shells for customer projects. The customers are not aware of Nix and I don't want to stress them. I use this folder to have them in version control and symlink them into the project.


Holds nix os configuration for different system.s Each system has its own subfolder.


Update can be done via custom-update-system package which is a custom package.

Manual changes

List of manual needed changes for various reasons.

  • Use xdm as display manager, or: Allow gdm3 to use xsessions as login. Add the following content as `/usr/share/xsessions/xsession.desktop`:

    [Desktop Entry]
    Comment=This session uses the custom xsession file

    This is used by gdm3 (installed via ubuntu host) to allow logging in via xsession which will pick up all the settings generated by home-manager.

    Do not forget to call sudo desktop-file-install xsession.desktop to make system aware of the file.



  • Migrate home manager to use flake for better rollback support if update breaks something.



Some resources I found useful (in no particular order):