# 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 * **OS**: NixOS * **DE**: XFCE (customized) * **GTK Theme**: [Chicago95](https://github.com/grassmunk/Chicago95) * **Icons & Wallpapers**: [aconfuseddragon](https://aconfuseddragon.itch.io/) --- ## πŸ“ Directory Overview
tree . ```bash 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 Nixos95 to your flake and import the module ```nix # flake.nix { inputs = { nixos95.url = "github:Peritia-System/NixOS-95/Dev"; nixos95.inputs.nixpkgs.follows = "nixpkgs"; } outputs = inputs @ { nixos95, ... }: { nixosConfigurations.HOSTNAME = nixpkgs.lib.nixosSystem { modules = [ nixos95.nixosModules.default ./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 You can configure Nixos95 under the `nixos95` namespace. For a minimal config just set: ``` { nixos95.enable = true; } ``` > Warning: This will activate the xfce desktop manager, as well as lightdm and ssdm as display manager. > You might want to disable your other desktop environment to prevent bugs. If you want to further customize Nixos95 you can use the following config options (given values are the default ones): ```nix { nixos95 = { enable = true; # default is false user = "USERNAME"; # no default set; specifies the user used by home-manager wallpaper = ./Resources/Images/Wallpapers/Wallpaper-1.png; taskbar = { homeIcon = "whisker-menu-button"; battery-plugin = { enable = true; power_bar = { enabe = true; critical_at = 10; warning_at = 20; color_warning = "rgb(248,228,92)"; color_critical = "rgb(237,51,59)"; color_loading = "rgb(119,118,123)"; color_default = "rgb(143,240,164)"; }; }; }; applications = [ { name = "Files"; description = "View and manage local files"; icon = "folder_open"; exe = "exo-open --launch FileManager"; } { name = "Terminal"; description = "Run commands"; icon = "xfce4-terminal"; pkg = pkgs.xfce4-terminal; } { name = "Browser"; description = "Access the world wide web"; icon = "firefox"; exe = "exo-open --launch WebBrowser"; } ]; keybinds = { commands = [ { key = "r"; exe = "xfce4-appfinder --collapsed"; } { key = "XF86WWW"; exe = "exo-open --launch WebBrowser"; } { key = "XF86Mail"; exe = "exo-open --launch MailReder"; } { key = "Print"; exe = "xfce4-screenshooter"; } { key="l"; exe="xflock4"; } ]; xfwm4 = [ ]; }; }; } ``` ### 3. **Build and switch to the system configuration**: ```bash sudo NIX_CONFIG="experimental-features = nix-command flakes pipe-operators" nixos-rebuild switch --flake .#default ``` ### Experimental Features NixOS-95 relys on multiple experimental nix features. These are: 1. [flakes](https://wiki.nixos.org/wiki/Flakes) 2. [pipe-operators](https://nix.dev/manual/nix/2.26/language/operators#pipe-operators) They are needed to activate the configuration. To enable them in your config set: ```nix 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](./Ressources/Showcase/vm.png)
More Screenshots ![Image2](./Ressources/Showcase/nyx.png) ![Image3](./Ressources/Showcase/nixos-ms-surface.png) ![Image4](./Ressources/Showcase/Games.png) **Reddit Post:** πŸ‘‰ [See the Reddit showcase post](https://www.reddit.com/r/unixporn/comments/1m865np/xfce_win95_themed_rice_nixos95/)
--- ## 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!