A NixOS System fitting the Win95 Style
Find a file
gytic c0bd1bd615 docs(example): add example configuration
added both a home-manager and 'minimal configuration'.
They can be built and testet in this repo via:
- nixos-generate-config --dir example/default # or example/home-manager
- nix build path:./example/default#nixosConfigurations.default.config.system.build.toplevel # or path:./example/home-manager#...

the flake.lock and hardeware-configuration is ignored to prevent accidental commitment of the hardware-configuration (and get the freshes packages when somebody might use these configs as templates
2025-08-24 09:26:57 +02:00
example docs(example): add example configuration 2025-08-24 09:26:57 +02:00
nixos95 feat: add home-manager directly in NixOS-95 2025-08-24 09:26:57 +02:00
Ressources Add Games into Showcase 2025-07-24 16:17:11 +02:00
.gitignore docs(example): add example configuration 2025-08-24 09:26:57 +02:00
flake.lock feat: add home-manager directly in NixOS-95 2025-08-24 09:26:57 +02:00
flake.nix docs(example): add example configuration 2025-08-24 09:26:57 +02:00
README.md docs(example): add example configuration 2025-08-24 09:26:57 +02:00
reddit.txt added the reddit post to the readme 2025-07-24 16:52:01 +02:00

NixOS-95

A nostalgic Windows 95-inspired NixOS setup with modern pastel vibes.

This is a NixOS configuration designed to evoke the pixel-perfect charm of Windows 95, infused with a clean, soft pastel aesthetic. Lightweight, customizable, and perfect for retro lovers or low-spec setups.


🖥️ System Overview


📁 Directory Overview

tree .
NixOS-95/
├── flake.nix
├── flake.lock
├── Modules/
│   ├── Applications/
│   └── System/
├── nixos95
│   ├── dotfiles/
│   ├── core.nix
│   ├── default.nix
│   ├── desktop.nix
│   ├── keybinds.nix
│   ├── taskbar.nix
│   └── theme.nix
├── Ressources/
│   ├── Icons/
│   ├── Images/
│   │   └── Wallpapers/
│   └── Themes/
├── README.md

Installation - BETA

Requirements: nix.settings.experimental-features = ["nix-command" "flakes" "pipe-operators"]; Enabled

You can initilize a new flake-based configuration with:

# minimal
nix flake init -t github:Peritia-System/NixOS-95/Dev
# with home-manager
nix flake init -t github:Peritia-System/NixOS-95/Dev#home-manager

Or follow the manual installation process:

1. Add Nyx to your flake

# flake.nix
{
  inputs = {
    nixos95.url = "github:Peritia-System/NixOS-95/Dev";
    nixos95.inputs.nixpkgs.follows = "nixpkgs";
  }
  outputs = inputs @ { nixpkgs, nixos95, ... }: {
    nixosConfigurations.HOSTNAME = nixpkgs.lib.nixosSystem {
      modules = [ ./configuration.nix ];
    };
  };
}

If you are using home-manager you should also pin your version for Nixos95:

{
    inputs = {
        ...
        nixos95.inputs.home-manager.follows = "home-manager";
    };
    ...
}

2. Import in Configuration.nix

# configuration.nix
{
  imports = [ inputs.self.nixosModules.nixos95 ];
}

3. Enable modules

{
  # configuration.nix / or sth imported by the main config
  nixos95 = {
    enable = true;
    user = "alex";

    taskbar = {
      homeIcon = "whisker-menu-button";
      battery-plugin.enable = false;
      applications = [
        {
          name = "Brave";
          description = "Browse the Web";
          pkg = pkgs.brave;
          icon = "world";
        }
        {
          name = "Signal";
          description = "Private Messenger";
          pkg = pkgs.signal-desktop;
          icon = "signal";
        }
        {
          name = "Obsidian";
          description = "Markdown Editor";
          exe = "obsidian %u";
          icon = "obsidian";
        }
        {
          name = "Spotify";
          description = "Spotify Music";
          exe = "spotify %U";
          icon = "spotify";
        }
      ];
    };

    keybinds = {
      commands = [
        { key="<Super>l";  exe="xflock4"; }
      ];
    };
  };

}
  1. Build and switch to the system configuration:

    sudo NIX_CONFIG="experimental-features = nix-command flakes pipe-operators" nixos-rebuild switch --flake .#default
    

w

Experimental Features

NixOS-95 relys on multiple experimental nix features. These are:

  1. flakes
  2. pipe-operators They are needed to activate the configuration.

To enable them in your config set:

nix.settings.experimental-features = [
    "flakes" "pipe-operators"
];

Rebuild Notes

Due to how Home Manager and XFCE handle theming, changes may not fully apply on the first attempt.

For best results:

  1. Rebuild twice
  2. Log out and back in after each rebuild

Features

  • Pixel-style retro desktop with pastel polish
  • Lightweight and XFCE-powered (great for low-spec machines)
  • Flake-based configuration with easy updates
  • Themed with Chicago95 and matching icon set

Showcase

Image1

More Screenshots

Image2
Image3
Image4

Reddit Post:
👉 See the Reddit showcase post


Final Thoughts

This setup was built for my boyfriend to use during school. I love how this setup turned out—it's nostalgic and clean, so I wanted to give more people the opportunity to use it. Hope you enjoy it!