Compare commits
2 Commits
05b74c5457
...
74cfb4ae76
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
74cfb4ae76 | ||
|
|
b6bff6887e |
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,2 +1,4 @@
|
|||||||
|
|
||||||
result
|
result
|
||||||
|
nixos*.iso
|
||||||
|
*.qcow2
|
||||||
|
|||||||
172
README.md
Normal file
172
README.md
Normal file
@ -0,0 +1,172 @@
|
|||||||
|
# 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
|
||||||
|
|
||||||
|
```nix
|
||||||
|
# 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:
|
||||||
|
|
||||||
|
```nix
|
||||||
|
# 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:
|
||||||
|
|
||||||
|
```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
|
||||||
|
Before Width: | Height: | Size: 12 MiB After Width: | Height: | Size: 12 MiB |
77
flake.nix
77
flake.nix
@ -3,34 +3,83 @@
|
|||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
||||||
|
|
||||||
|
home-manager = {
|
||||||
|
url = "github:nix-community/home-manager";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
nixos-generators = {
|
||||||
|
url = "github:nix-community/nixos-generators";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
outputs = { self, nixpkgs, ... }@inputs:
|
||||||
outputs = { self, nixpkgs, ... }@inputs:
|
|
||||||
let
|
let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
pkgs = import nixpkgs { inherit system; };
|
pkgs = import nixpkgs { inherit system; };
|
||||||
in {
|
windows-theme = inputs.self;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
nixosConfigurations =
|
||||||
|
{
|
||||||
|
nixp = nixpkgs.lib.nixosSystem {
|
||||||
|
inherit system;
|
||||||
|
specialArgs = { inherit inputs system windows-theme; };
|
||||||
|
modules = [
|
||||||
|
./hosts/configuration.nix
|
||||||
|
self.nixosModules.default
|
||||||
|
inputs.home-manager.nixosModules.home-manager
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
default = self.nixosConfigurations.nixp;
|
||||||
|
};
|
||||||
|
|
||||||
packages.${system} = {
|
packages.${system} = {
|
||||||
windows-xp-icons = pkgs.callPackage ./windows-xp-icons.nix { };
|
windows-xp-icons = pkgs.callPackage ./packages/windows-xp-icons.nix { };
|
||||||
windows-xp-theme = pkgs.callPackage ./windows-xp-theme.nix { };
|
windows-xp-theme = pkgs.callPackage ./packages/windows-xp-theme.nix { };
|
||||||
windows-xp-cursor = pkgs.callPackage ./windows-xp-cursor.nix { };
|
windows-xp-cursor = pkgs.callPackage ./packages/windows-xp-cursor.nix { };
|
||||||
windows-xp-plymouth = pkgs.callPackage ./windows-xp-plymouth.nix { };
|
windows-xp-plymouth = pkgs.callPackage ./packages/windows-xp-plymouth.nix { };
|
||||||
windows-xp-grub = pkgs.callPackage ./windows-xp-grub.nix { };
|
windows-xp-grub = pkgs.callPackage ./packages/windows-xp-grub.nix { };
|
||||||
#windows-xp-login = pkgs.callPackage ./windows-xp-login.nix { };
|
#windows-xp-login = pkgs.callPackage ./windows-xp-login.nix { };
|
||||||
|
|
||||||
default = self.packages.${system}.windows-xp-theme;
|
vm = inputs.nixos-generators.nixosGenerate {
|
||||||
|
inherit system;
|
||||||
|
specialArgs = { inherit inputs system windows-theme; };
|
||||||
|
modules = [
|
||||||
|
./hosts/configuration.nix
|
||||||
|
self.nixosModules.default
|
||||||
|
inputs.home-manager.nixosModules.home-manager
|
||||||
|
];
|
||||||
|
|
||||||
|
format = "vm";
|
||||||
|
};
|
||||||
|
|
||||||
|
install-iso = inputs.nixos-generators.nixosGenerate {
|
||||||
|
inherit system;
|
||||||
|
specialArgs = { inherit inputs system windows-theme; };
|
||||||
|
modules = [
|
||||||
|
./hosts/configuration.nix
|
||||||
|
self.nixosModules.default
|
||||||
|
inputs.home-manager.nixosModules.home-manager
|
||||||
|
];
|
||||||
|
|
||||||
|
format = "install-iso";
|
||||||
|
};
|
||||||
|
|
||||||
|
default = self.packages.${system}.vm;
|
||||||
};
|
};
|
||||||
|
|
||||||
nixosModules = {
|
nixosModules = {
|
||||||
default = self.nixosModules.mate-xp-config;
|
default = self.nixosModules.mate-xp-config;
|
||||||
mate-xp-config = import ./mate-xp-config.nix;
|
mate-xp-config = import ./modules/mate-xp-config.nix;
|
||||||
};
|
};
|
||||||
|
|
||||||
homeModules = {
|
homeModules = {
|
||||||
default = self.homeModules.mate-xp-home;
|
default = self.homeModules.mate-xp-home;
|
||||||
mate-xp-home = import ./mate-xp-home.nix;
|
mate-xp-home = import ./modules/mate-xp-home.nix;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
194
hosts/configuration.nix
Normal file
194
hosts/configuration.nix
Normal file
@ -0,0 +1,194 @@
|
|||||||
|
{ lib, pkgs, inputs, system, windows-theme, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
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 = {
|
||||||
|
admin = import ./home.nix;
|
||||||
|
};
|
||||||
|
extraSpecialArgs = { inherit inputs system pkgs windows-theme; };
|
||||||
|
sharedModules = [
|
||||||
|
inputs.self.homeModules.default
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Use the systemd-boot EFI boot loader.
|
||||||
|
boot = {
|
||||||
|
#kernelParams = [ "console=tty0" ];
|
||||||
|
loader = {
|
||||||
|
systemd-boot.enable = true;
|
||||||
|
efi.canTouchEfiVariables = true;
|
||||||
|
# timeout = 5;
|
||||||
|
};
|
||||||
|
plymouth = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nixp.enable = true;
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
hostName = "nixp";
|
||||||
|
networkmanager.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
hardware.bluetooth = {
|
||||||
|
enable = true;
|
||||||
|
powerOnBoot = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Set your time zone.
|
||||||
|
time.timeZone = "Europe/Prague";
|
||||||
|
|
||||||
|
i18n = {
|
||||||
|
defaultLocale = "en_US.UTF-8";
|
||||||
|
|
||||||
|
extraLocaleSettings = {
|
||||||
|
LC_ADDRESS = "cs_CZ.UTF-8";
|
||||||
|
LC_IDENTIFICATION = "cs_CZ.UTF-8";
|
||||||
|
LC_MEASUREMENT = "cs_CZ.UTF-8";
|
||||||
|
LC_MONETARY = "cs_CZ.UTF-8";
|
||||||
|
LC_NAME = "cs_CZ.UTF-8";
|
||||||
|
LC_NUMERIC = "cs_CZ.UTF-8";
|
||||||
|
LC_PAPER = "cs_CZ.UTF-8";
|
||||||
|
LC_TELEPHONE = "cs_CZ.UTF-8";
|
||||||
|
LC_TIME = "cs_CZ.UTF-8";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
services = {
|
||||||
|
xserver = {
|
||||||
|
enable = true;
|
||||||
|
xkb.layout = "gb,cz,ru";
|
||||||
|
|
||||||
|
desktopManager = {
|
||||||
|
mate.enable = true;
|
||||||
|
xfce.enable = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
displayManager.lightdm = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
displayManager = {
|
||||||
|
defaultSession = "mate";
|
||||||
|
};
|
||||||
|
|
||||||
|
libinput.enable = true;
|
||||||
|
blueman.enable = true;
|
||||||
|
|
||||||
|
|
||||||
|
pulseaudio.enable = false;
|
||||||
|
pipewire = {
|
||||||
|
enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
security.rtkit.enable = true;
|
||||||
|
|
||||||
|
environment.mate.excludePackages = with pkgs.mate; [
|
||||||
|
mate-terminal
|
||||||
|
mate-themes
|
||||||
|
mate-user-share
|
||||||
|
mate-backgrounds
|
||||||
|
];
|
||||||
|
|
||||||
|
# services.printing.enable = true;
|
||||||
|
|
||||||
|
fonts.packages = with pkgs; [
|
||||||
|
noto-fonts
|
||||||
|
noto-fonts-emoji
|
||||||
|
corefonts
|
||||||
|
];
|
||||||
|
|
||||||
|
nixpkgs.config = {
|
||||||
|
allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
|
||||||
|
"stremio-shell"
|
||||||
|
"stremio-server"
|
||||||
|
"corefonts"
|
||||||
|
];
|
||||||
|
|
||||||
|
permittedInsecurePackages = [
|
||||||
|
"qtwebengine-5.15.19"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
# List packages installed in system profile.
|
||||||
|
# You can use https://search.nixos.org/ to find more packages (and options).
|
||||||
|
|
||||||
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
|
# started in user sessions.
|
||||||
|
# programs.mtr.enable = true;
|
||||||
|
# programs.gnupg.agent = {
|
||||||
|
# enable = true;
|
||||||
|
# enableSSHSupport = true;
|
||||||
|
# };
|
||||||
|
|
||||||
|
# List services that you want to enable:
|
||||||
|
|
||||||
|
# Enable the OpenSSH daemon.
|
||||||
|
# services.openssh.enable = true;
|
||||||
|
|
||||||
|
# Open ports in the firewall.
|
||||||
|
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||||
|
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||||
|
# Or disable the firewall altogether.
|
||||||
|
# networking.firewall.enable = false;
|
||||||
|
|
||||||
|
# Copy the NixOS configuration file and link it from the resulting system
|
||||||
|
# (/run/current-system/configuration.nix). This is useful in case you
|
||||||
|
# accidentally delete configuration.nix.
|
||||||
|
# system.copySystemConfiguration = true;
|
||||||
|
|
||||||
|
# This option defines the first version of NixOS you have installed on this particular machine,
|
||||||
|
# and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
|
||||||
|
#
|
||||||
|
# Most users should NEVER change this value after the initial install, for any reason,
|
||||||
|
# even if you've upgraded your system to a new NixOS release.
|
||||||
|
#
|
||||||
|
# This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
|
||||||
|
# so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how
|
||||||
|
# to actually do that.
|
||||||
|
#
|
||||||
|
# This value being lower than the current NixOS release does NOT mean your system is
|
||||||
|
# out of date, out of support, or vulnerable.
|
||||||
|
#
|
||||||
|
# Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
|
||||||
|
# and migrated your data accordingly.
|
||||||
|
#
|
||||||
|
# For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
|
||||||
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
system.stateVersion = "25.11"; # Did you read the comment?
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
33
hosts/hardware-configuration.nix
Normal file
33
hosts/hardware-configuration.nix
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
|
# and may be overwritten by future invocations. Please make changes
|
||||||
|
# to /etc/nixos/configuration.nix instead.
|
||||||
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports =
|
||||||
|
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" =
|
||||||
|
{ device = "/dev/disk/by-uuid/2037dfa2-abb1-4f51-90ed-cc3cc5aa94ed";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/3897-60B5";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [ "fmask=0077" "dmask=0077" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices =
|
||||||
|
[ { device = "/dev/disk/by-uuid/078c9606-e3cc-4770-a200-382b247723a6"; }
|
||||||
|
];
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
||||||
34
hosts/home.nix
Normal file
34
hosts/home.nix
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
home = {
|
||||||
|
username = "admin";
|
||||||
|
homeDirectory = "/home/admin";
|
||||||
|
stateVersion = "25.11";
|
||||||
|
};
|
||||||
|
programs.home-manager.enable = true;
|
||||||
|
|
||||||
|
services = {
|
||||||
|
network-manager-applet.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
nixp.mate.enable = true;
|
||||||
|
dconf.settings = {
|
||||||
|
"org/mate/desktop/peripherals/touchpad" = {
|
||||||
|
tap-to-click = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
"org/mate/desktop/peripherals/keyboard/kbd" = {
|
||||||
|
options = [ "terminate\tterminate:ctrl_alt_bksp" "grp\tgrp:alt_shift_toggle" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"org/mate/desktop/applications/terminal" = {
|
||||||
|
exec = "xterm";
|
||||||
|
exec-arg = "-x";
|
||||||
|
};
|
||||||
|
|
||||||
|
"org/mate/notification-daemon" = {
|
||||||
|
theme = "slider";
|
||||||
|
popup-location = "top_right";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@ -11,6 +11,7 @@
|
|||||||
|
|
||||||
theme = {
|
theme = {
|
||||||
plymouth.enable = lib.mkEnableOption "enable plymouth Windows XP theme";
|
plymouth.enable = lib.mkEnableOption "enable plymouth Windows XP theme";
|
||||||
|
grub.enable = lib.mkEnableOption "enable grub Windows XP theme";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -21,11 +22,12 @@
|
|||||||
nixp = {
|
nixp = {
|
||||||
theme = {
|
theme = {
|
||||||
plymouth.enable = lib.mkDefault true;
|
plymouth.enable = lib.mkDefault true;
|
||||||
|
grub.enable = lib.mkDefault true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
xserver.displayManager.lightdm.background = ./wall.png;
|
xserver.displayManager.lightdm.background = ../assets/wall.png;
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with windows-theme.packages.x86_64-linux; [
|
environment.systemPackages = with windows-theme.packages.x86_64-linux; [
|
||||||
@ -42,5 +44,8 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
(lib.mkIf config.nixp.theme.grub.enable {
|
||||||
|
boot.loader.grub.theme = windows-theme.packages.${system}.windows-xp-grub;
|
||||||
|
})
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
@ -14,7 +14,7 @@
|
|||||||
enable = lib.mkEnableOption "enable and set background for mate";
|
enable = lib.mkEnableOption "enable and set background for mate";
|
||||||
path = lib.mkOption {
|
path = lib.mkOption {
|
||||||
type = lib.types.path;
|
type = lib.types.path;
|
||||||
default = ./wall.png;
|
default = ../assets/wall.png;
|
||||||
description = "Set path to the background";
|
description = "Set path to the background";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -1,6 +1,6 @@
|
|||||||
{ lib, stdenv, fetchFromGitHub, inkscape, xcursorgen }:
|
{ lib, stdenv, fetchFromGitHub, inkscape, xcursorgen }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation {
|
||||||
pname = "modernxp-cursor-theme";
|
pname = "modernxp-cursor-theme";
|
||||||
version = "1.0";
|
version = "1.0";
|
||||||
|
|
||||||
@ -2,7 +2,6 @@
|
|||||||
, stdenvNoCC
|
, stdenvNoCC
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, gtk3
|
, gtk3
|
||||||
, hicolor-icon-theme
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenvNoCC.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
Loading…
Reference in New Issue
Block a user