An open API service indexing awesome lists of open source software.

https://github.com/dxc-0/nix-dotfiles

Fedora Atomic/Immuable dotfiles with Nix and Homemanager
https://github.com/dxc-0/nix-dotfiles

dotfile-management dotfiles dotfiles-linux fedora fedora-atomic fedora-kinoite home-manager home-manager-config immuatable immutability linux nix nix-dotfiles nixpkgs rpm-ostree

Last synced: 9 days ago
JSON representation

Fedora Atomic/Immuable dotfiles with Nix and Homemanager

Awesome Lists containing this project

README

          

> I manage my dotfiles with [Nix](https://nixos.org/) and [Homemanager](https://github.com/nix-community/home-manager) on the atomic and immutable distribution [Fedora Kinoite](https://fedoraproject.org/atomic-desktops/kinoite/). I use nix packages to avoid flatpak and layering to the base image. Nixpkgs is one of the largest linux package bases, for what is not available I use podman containers. Home-manager control absolutely everything declaratively and even deployment with [rpm-ostree](https://coreos.github.io/rpm-ostree/).

[![kinoite-nix.png](https://i.postimg.cc/Wb9C26zv/kinoite-nix.png)](https://postimg.cc/3dvn1G2S)

### Preparation

```bash
sudo tee /etc/ostree/prepare-root.conf <<'EOL'
[composefs]
enabled = yes
[root]
transient = true
EOL

rpm-ostree initramfs-etc --reboot --track=/etc/ostree/prepare-root.conf
```

### Install Nix

```bash
curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | \
sh -s -- install ostree --no-confirm --persistence=/var/lib/nix
```

### Add Nix Unstable

```bash
nix-channel --add https://nixos.org/channels/nixpkgs-unstable nixpkgs
nix-channel --update
```

### Install Home-Manager

```
nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
nix-channel --update
```

```
nix-shell '' -A install
```

### Rebuild the configuration

```
git clone https://github.com/DXC-0/Nix-Dotfiles.git
cd Nix-Dotfiles
mkdir -p $HOME/.config/home-manager
mv * $HOME/.config/home-manager
```

```
home-manager switch
```