mirror of
https://github.com/Moe1369/nixos-config.git
synced 2024-10-18 04:14:08 +02:00
global settings
This commit is contained in:
parent
97fa1e39b4
commit
eb134c8e79
107
flake.nix
107
flake.nix
@ -15,17 +15,29 @@
|
||||
};
|
||||
outputs = { self, nixpkgs, home-manager, jovian, plasma-manager, ...}:
|
||||
let
|
||||
# Different Devices
|
||||
host-computer = "computer-mo";
|
||||
host-server = "server";
|
||||
host-konsole = "konsole";
|
||||
host-steamdeck = "steamdeck";
|
||||
|
||||
user-computer = "mo";
|
||||
user-server = "administrator";
|
||||
user-konsole = "deck";
|
||||
user-steamdeck = "deck";
|
||||
|
||||
|
||||
lib = nixpkgs.lib;
|
||||
host = "computer-mo";
|
||||
user = "mo";
|
||||
system = "x86_64-linux";
|
||||
pkgs = import nixpkgs {inherit system;};
|
||||
in {
|
||||
|
||||
nixosConfigurations = {
|
||||
${host} = lib.nixosSystem {
|
||||
specialArgs = {inherit user host;};
|
||||
${host-computer} = lib.nixosSystem {
|
||||
specialArgs = {inherit user-computer host-computer;};
|
||||
modules = [
|
||||
./hosts/${host}/system-imports.nix
|
||||
./hosts/${host-computer}/system-imports.nix
|
||||
./global/system-imports.nix
|
||||
jovian.nixosModules.jovian
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
@ -33,11 +45,94 @@
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.backupFileExtension = "backup";
|
||||
home-manager.extraSpecialArgs = {inherit pkgs;};
|
||||
home-manager.users.${user}.imports = [./hosts/${host}/user-imports.nix];
|
||||
home-manager.users.${user-computer}.imports = [
|
||||
./hosts/${host-computer}/user-imports.nix
|
||||
./global/user-imports.nix
|
||||
];
|
||||
home-manager.sharedModules = [ plasma-manager.homeManagerModules.plasma-manager];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
nixosConfigurations = {
|
||||
${host-server} = lib.nixosSystem {
|
||||
specialArgs = {inherit user-server host-server;};
|
||||
modules = [
|
||||
./hosts/${host-server}/system-imports.nix
|
||||
./global/system-imports.nix
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.backupFileExtension = "backup";
|
||||
home-manager.extraSpecialArgs = {inherit pkgs;};
|
||||
home-manager.users.${user-server}.imports = [
|
||||
./hosts/${user-server}/user-imports.nix
|
||||
./global/user-imports.nix
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
nixosConfigurations = {
|
||||
${host-konsole} = lib.nixosSystem {
|
||||
specialArgs = {inherit user-konsole host-konsole;};
|
||||
modules = [
|
||||
./hosts/${host-konsole}/system-imports.nix
|
||||
./global/system-imports.nix
|
||||
jovian.nixosModules.jovian
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.backupFileExtension = "backup";
|
||||
home-manager.extraSpecialArgs = {inherit pkgs;};
|
||||
home-manager.users.${user-konsole}.imports = [
|
||||
./hosts/${user-konsole}/user-imports.nix
|
||||
./global/user-imports.nix
|
||||
];
|
||||
home-manager.sharedModules = [ plasma-manager.homeManagerModules.plasma-manager];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
nixosConfigurations = {
|
||||
${host-steamdeck} = lib.nixosSystem {
|
||||
specialArgs = {inherit user-steamdeck host-steamdeck;};
|
||||
modules = [
|
||||
./hosts/${host-steamdeck}/system-imports.nix
|
||||
./global/system-imports.nix
|
||||
jovian.nixosModules.jovian
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.backupFileExtension = "backup";
|
||||
home-manager.extraSpecialArgs = {inherit pkgs;};
|
||||
home-manager.users.${user-steamdeck}.imports = [
|
||||
./hosts/${user-steamdeck}/user-imports.nix
|
||||
./global/user-imports.nix
|
||||
];
|
||||
home-manager.sharedModules = [ plasma-manager.homeManagerModules.plasma-manager];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
};
|
||||
}
|
||||
|
15
global/system-imports.nix
Normal file
15
global/system-imports.nix
Normal file
@ -0,0 +1,15 @@
|
||||
{ ... }:
|
||||
{
|
||||
imports =
|
||||
[
|
||||
# Packages
|
||||
./system-packages/sys.pkg-dev.nix
|
||||
# Settings
|
||||
./system-settings/sys.set-boot.nix
|
||||
./system-settings/sys.set-dev.nix
|
||||
./system-settings/sys.set-locale.nix
|
||||
./system-settings/sys.set-networking.nix
|
||||
./system-settings/sys.set-system.nix
|
||||
./system-settings/sys.set-updates.nix
|
||||
];
|
||||
}
|
4
global/system-packages/sys.pkg-dev.nix
Normal file
4
global/system-packages/sys.pkg-dev.nix
Normal file
@ -0,0 +1,4 @@
|
||||
{ ... }:
|
||||
{
|
||||
programs.zsh.enable = true;
|
||||
}
|
10
global/system-settings/sys.set-boot.nix
Normal file
10
global/system-settings/sys.set-boot.nix
Normal file
@ -0,0 +1,10 @@
|
||||
{ ... }:
|
||||
{
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.plymouth.enable = true;
|
||||
boot.plymouth.theme = "bgrt";
|
||||
boot.consoleLogLevel = 0;
|
||||
boot.kernelParams = [ "quiet" "udev.log_level=0" ];
|
||||
boot.initrd.verbose = false;
|
||||
}
|
@ -1,6 +1,5 @@
|
||||
{ lib, host, ... }:
|
||||
{
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
networking.hostName = host;
|
||||
networking.networkmanager.enable = true;
|
||||
}
|
11
global/user-imports.nix
Normal file
11
global/user-imports.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
# Home-Manager Packages
|
||||
./user-packages/usr.pkg-dev.nix
|
||||
# Home-Manager Settings
|
||||
./user-settings/usr.set-dev.nix
|
||||
./user-settings/usr.set-system.nix
|
||||
];
|
||||
}
|
@ -17,15 +17,11 @@
|
||||
./system-settings/sys.set-boot.nix
|
||||
./system-settings/sys.set-controller.nix
|
||||
./system-settings/sys.set-desktop.nix
|
||||
./system-settings/sys.set-dev.nix
|
||||
./system-settings/sys.set-filesystems.nix
|
||||
./system-settings/sys.set-hardware.nix
|
||||
./system-settings/sys.set-locale.nix
|
||||
./system-settings/sys.set-networking.nix
|
||||
./system-settings/sys.set-hostname.nix
|
||||
./system-settings/sys.set-steam.nix
|
||||
./system-settings/sys.set-system.nix
|
||||
./system-settings/sys.set-systemd.nix
|
||||
./system-settings/sys.set-updates.nix
|
||||
./system-settings/sys.set-users.nix
|
||||
];
|
||||
}
|
||||
|
@ -1,6 +1,5 @@
|
||||
{ ... }:
|
||||
{
|
||||
services.xserver.enable = false;
|
||||
services.desktopManager.plasma6.enable = true;
|
||||
services.displayManager.sddm.wayland.enable = true;
|
||||
services.displayManager.sddm.enable = true;
|
||||
|
@ -1,7 +1,5 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
programs.zsh.enable = true;
|
||||
|
||||
environment.systemPackages =
|
||||
(with pkgs; [
|
||||
kdePackages.kate
|
||||
|
@ -2,15 +2,8 @@
|
||||
{
|
||||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.initrd.verbose = false;
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.plymouth.enable = true;
|
||||
boot.plymouth.theme = "bgrt";
|
||||
boot.consoleLogLevel = 0;
|
||||
boot.kernelParams = [ "quiet" "udev.log_level=0" "amd_pstate=guided" ];
|
||||
boot.extraModprobeConfig = ''
|
||||
options amdgpu ppfeaturemask=0xFFF7FFFF
|
||||
'';
|
||||
|
@ -1,5 +1,6 @@
|
||||
{ user, ... }:
|
||||
{
|
||||
services.xserver.enable = false;
|
||||
services.displayManager.autoLogin.enable = true;
|
||||
services.displayManager.autoLogin.user = user;
|
||||
}
|
||||
|
4
hosts/computer-mo/system-settings/sys.set-hostname.nix
Normal file
4
hosts/computer-mo/system-settings/sys.set-hostname.nix
Normal file
@ -0,0 +1,4 @@
|
||||
{ host-computer, ... }:
|
||||
{
|
||||
networking.hostName = host-computer;
|
||||
}
|
@ -1,8 +1,8 @@
|
||||
{ user, ... }:
|
||||
{ user-computer, ... }:
|
||||
{
|
||||
jovian.steam = {
|
||||
autoStart = false;
|
||||
user = user;
|
||||
user = user-computer;
|
||||
desktopSession = "plasma";
|
||||
};
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ user, ... }:
|
||||
{ user-computer, ... }:
|
||||
{
|
||||
users.users.${user} = {
|
||||
users.users.${user-computer} = {
|
||||
isNormalUser = true;
|
||||
description = "Mohamed Chrayed";
|
||||
extraGroups = [ "networkmanager" "wheel" ];
|
||||
|
@ -3,13 +3,10 @@
|
||||
{
|
||||
imports = [
|
||||
# Home-Manager Packages
|
||||
./user-packages/usr.pkg-dev.nix
|
||||
./user-packages/usr.pkg-desktop.nix
|
||||
# Home-Manager Settings
|
||||
./user-settings/usr.set-dotfiles.nix
|
||||
./user-settings/usr.set-customization.nix
|
||||
./user-settings/usr.set-dev.nix
|
||||
./user-settings/usr.set-dotfiles.nix
|
||||
./user-settings/usr.set-desktop.nix
|
||||
./user-settings/usr.set-system.nix
|
||||
];
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user