| assets | ||
| hosts | ||
| modules | ||
| packages | ||
| .gitignore | ||
| flake.nix | ||
| README.md | ||
Windows XP theme for NixOS
- This is repository containing packaged version of themes, icons, cursors, etc... for NixOS and module to simply use them with Mate desktop
Installation
Using VM or ISO
QEMU VM
- You can build simple qemu vm using nixos generators package in this configuration using
nix run git+https://gitea.homework.zip/shinya/Windows-Theme-Flake
Live ISO
- If you would like to have this image on your flashdisk and live boot it you can get .iso file using nix run git+https://gitea.homework.zip/shinya/Windows-Theme-Flake#live-iso
Using Flakes
# Example flake.nix
{
description = "Your system flake with Windows XP theme";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
# Add this to your inputs
windows-theme = {
url = "git+https://gitea.homework.zip/shinya/Windows-Theme-Flake";
inputs.nixpkgs.follows = "nixpkgs";
};
};
# Add explicit function parameter windows-theme to the output
outputs = { self, nixpkgs, windows-theme, ... }@inputs: let
system = "x86_64-linux";
in {
nixosConfigurations.nixp = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {inherit windows-theme system;}; # Append windows-theme and system to the inherited args
modules = [
./configuration.nix
inputs.windows-theme.nixosModules.default # This will add configuration options to your config
inputs.home-manager.nixosModules.home-manager
];
};
};
}
NixOS System Configuration
Add the NixOS module to your system configuration:
# Example configuration.nix
{ inputs, ... }:
{
imports = [
inputs.nixp-module.nixosModules.default
];
nixp = {
enable = true; # Enable Windows XP theme system-wide
theme = {
plymouth.enable = true; # Enable Windows XP boot screen
};
};
}
Home Manager Configuration
Add the Home Manager module to your user configuration:
# Example home-manager configuration
{ inputs, ... }:
{
imports = [
inputs.nixp-module.homeModules.default
];
nixp.mate = {
enable = true; # Enable all the options below for Windows XP MATE configuration
# Optional: Customize theme variant
theme = {
enable = true;
name = "Windows XP Luna"; # Options: Luna, Embedded, Homestead, Metallic, Royale, Royale Dark, Zune
};
# Optional: Customize background
background = {
enable = true;
path = ./path/to/your/wallpaper.png; # Default: included XP wallpaper
};
panel.enable = true; # Windows XP-style taskbar layout
cursor.enable = true;
icon.enable = true;
};
}
Available Packages
You can install individual packages without using the full module:
environment.systemPackages = with inputs.nixp-module.packages.${system}; [
windows-xp-theme
windows-xp-icons
windows-xp-cursor
windows-xp-plymouth
windows-xp-grub
];
Configuration Options
NixOS Module (nixp)
nixp.enable- Enable Windows XP theme system-widenixp.theme.plymouth.enable- Enable Plymouth boot screen themenixp.theme.grub.enable- Enable GRUB boot screen theme
Home Manager Module (nixp.mate)
nixp.mate.enable- Enable complete MATE Windows XP configurationnixp.mate.panel.enable- Enable Windows XP taskbar-style panel layoutnixp.mate.background.enable- Enable background configurationnixp.mate.background.path- Path to wallpaper (default: included XP wallpaper)nixp.mate.theme.enable- Enable GTK themenixp.mate.theme.name- Theme variant (default: "Windows XP Luna")nixp.mate.cursor.enable- Enable cursor themenixp.mate.icon.enable- Enable icon theme
Theme Variants
Available Windows XP theme variants:
- Windows XP Luna - Classic blue theme (default)
- Windows XP Embedded - Gray industrial theme
- Windows XP Homestead - Green nature theme
- Windows XP Metallic - Silver metallic theme
- Windows XP Royale - Blue professional theme
- Windows XP Royale Dark - Dark professional theme
- Windows XP Zune - Orange Zune theme
Requirements
- NixOS with flakes enabled
- MATE Desktop Environment
- Home Manager (for user-level configuration)
Credits
This module integrates several open-source projects:
- B00merang-Project/Windows-XP - GTK theme
- na0miluv/modernXP-cursor-theme - Cursor theme
- B00merang-Artwork/Windows-XP - Icon theme
- FraioVeio/plymouth-xp-theme - Plymouth theme
- Blaysht/grub_bios_theme - GRUB theme