Updated README and configuration.nix
This commit is contained in:
parent
b6bff6887e
commit
74cfb4ae76
128
README.md
128
README.md
@ -4,9 +4,20 @@
|
||||
|
||||
## Installation
|
||||
|
||||
- Supported via NixOS modules with flakes
|
||||
### 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
|
||||
|
||||
```nix
|
||||
# Example flake.nix
|
||||
{
|
||||
description = "Your system flake with Windows XP theme";
|
||||
|
||||
@ -43,10 +54,119 @@
|
||||
}
|
||||
```
|
||||
|
||||
- Then in your config you can enable it with:
|
||||
### NixOS System Configuration
|
||||
|
||||
Add the NixOS module to your system configuration:
|
||||
|
||||
```nix
|
||||
nixp.mate.enable = true;
|
||||
# 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
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
- More options will be added soon
|
||||
### Home Manager Configuration
|
||||
|
||||
Add the Home Manager module to your user configuration:
|
||||
|
||||
```nix
|
||||
# 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:
|
||||
|
||||
```nix
|
||||
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-wide
|
||||
- `nixp.theme.plymouth.enable` - Enable Plymouth boot screen theme
|
||||
- `nixp.theme.grub.enable` - Enable GRUB boot screen theme
|
||||
|
||||
### Home Manager Module (`nixp.mate`)
|
||||
|
||||
- `nixp.mate.enable` - Enable complete MATE Windows XP configuration
|
||||
- `nixp.mate.panel.enable` - Enable Windows XP taskbar-style panel layout
|
||||
- `nixp.mate.background.enable` - Enable background configuration
|
||||
- `nixp.mate.background.path` - Path to wallpaper (default: included XP wallpaper)
|
||||
- `nixp.mate.theme.enable` - Enable GTK theme
|
||||
- `nixp.mate.theme.name` - Theme variant (default: "Windows XP Luna")
|
||||
- `nixp.mate.cursor.enable` - Enable cursor theme
|
||||
- `nixp.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](https://github.com/B00merang-Project/Windows-XP) - GTK theme
|
||||
- [na0miluv/modernXP-cursor-theme](https://github.com/na0miluv/modernXP-cursor-theme) - Cursor theme
|
||||
- [B00merang-Artwork/Windows-XP](https://github.com/B00merang-Artwork/Windows-XP) - Icon theme
|
||||
- [FraioVeio/plymouth-xp-theme](https://github.com/FraioVeio/plymouth-xp-theme) - Plymouth theme
|
||||
- [Blaysht/grub_bios_theme](https://github.com/Blaysht/grub_bios_theme) - GRUB theme
|
||||
|
||||
@ -3,6 +3,28 @@
|
||||
{
|
||||
imports = [ ./hardware-configuration.nix ];
|
||||
|
||||
users.users = {
|
||||
# root.password = "admin1234";
|
||||
admin = {
|
||||
isNormalUser = true;
|
||||
extraGroups = [ "wheel" "networkmanager" ]; # Enable ‘sudo’ for the user.
|
||||
password = "admin1234"; #IMPORTANT: Change this to your own password.
|
||||
packages = (with pkgs; [
|
||||
git
|
||||
helix
|
||||
dconf-editor
|
||||
|
||||
librewolf
|
||||
hypnotix
|
||||
blueman
|
||||
libreoffice
|
||||
wineWowPackages.stable
|
||||
mpv
|
||||
stremio
|
||||
]);
|
||||
};
|
||||
};
|
||||
|
||||
home-manager = {
|
||||
backupFileExtension = "backup";
|
||||
users = {
|
||||
@ -16,7 +38,7 @@
|
||||
|
||||
# Use the systemd-boot EFI boot loader.
|
||||
boot = {
|
||||
kernelParams = [ "console=tty0" ];
|
||||
#kernelParams = [ "console=tty0" ];
|
||||
loader = {
|
||||
systemd-boot.enable = true;
|
||||
efi.canTouchEfiVariables = true;
|
||||
@ -58,11 +80,6 @@
|
||||
};
|
||||
};
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
noto-fonts
|
||||
noto-fonts-emoji
|
||||
corefonts
|
||||
];
|
||||
|
||||
services = {
|
||||
xserver = {
|
||||
@ -98,31 +115,20 @@
|
||||
|
||||
security.rtkit.enable = true;
|
||||
|
||||
# Enable CUPS to print documents.
|
||||
environment.mate.excludePackages = with pkgs.mate; [
|
||||
mate-terminal
|
||||
mate-themes
|
||||
mate-user-share
|
||||
mate-backgrounds
|
||||
];
|
||||
|
||||
# services.printing.enable = true;
|
||||
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
users.users = {
|
||||
root.password = "admin1234";
|
||||
admin = {
|
||||
isNormalUser = true;
|
||||
extraGroups = [ "wheel" "networkmanager" ]; # Enable ‘sudo’ for the user.
|
||||
password = "admin1234";
|
||||
packages = (with pkgs; [
|
||||
git
|
||||
helix
|
||||
dconf-editor
|
||||
|
||||
librewolf
|
||||
hypnotix
|
||||
blueman
|
||||
libreoffice
|
||||
wineWowPackages.stable
|
||||
mpv
|
||||
stremio
|
||||
]);
|
||||
};
|
||||
};
|
||||
fonts.packages = with pkgs; [
|
||||
noto-fonts
|
||||
noto-fonts-emoji
|
||||
corefonts
|
||||
];
|
||||
|
||||
nixpkgs.config = {
|
||||
allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
|
||||
@ -136,12 +142,6 @@
|
||||
];
|
||||
};
|
||||
|
||||
environment.mate.excludePackages = with pkgs.mate; [
|
||||
mate-terminal
|
||||
mate-themes
|
||||
mate-user-share
|
||||
mate-backgrounds
|
||||
];
|
||||
|
||||
# List packages installed in system profile.
|
||||
# You can use https://search.nixos.org/ to find more packages (and options).
|
||||
|
||||
Loading…
Reference in New Issue
Block a user