feat: inherited Nvidia configuration from old conf
This commit is contained in:
parent
f10f6922fb
commit
8fecc5f592
7 changed files with 117 additions and 82 deletions
|
@ -1,60 +0,0 @@
|
||||||
# This is your home-manager configuration file
|
|
||||||
# Use this to configure your home environment (it replaces ~/.config/nixpkgs/home.nix)
|
|
||||||
{
|
|
||||||
inputs,
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
# You can import other home-manager modules here
|
|
||||||
imports = [
|
|
||||||
# If you want to use home-manager modules from other flakes (such as nix-colors):
|
|
||||||
# inputs.nix-colors.homeManagerModule
|
|
||||||
|
|
||||||
# You can also split up your configuration and import pieces of it here:
|
|
||||||
# ./nvim.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
nixpkgs = {
|
|
||||||
# You can add overlays here
|
|
||||||
overlays = [
|
|
||||||
# If you want to use overlays exported from other flakes:
|
|
||||||
# neovim-nightly-overlay.overlays.default
|
|
||||||
|
|
||||||
# Or define it inline, for example:
|
|
||||||
# (final: prev: {
|
|
||||||
# hi = final.hello.overrideAttrs (oldAttrs: {
|
|
||||||
# patches = [ ./change-hello-to-hi.patch ];
|
|
||||||
# });
|
|
||||||
# })
|
|
||||||
];
|
|
||||||
# Configure your nixpkgs instance
|
|
||||||
config = {
|
|
||||||
# Disable if you don't want unfree packages
|
|
||||||
allowUnfree = true;
|
|
||||||
# Workaround for https://github.com/nix-community/home-manager/issues/2942
|
|
||||||
allowUnfreePredicate = _: true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# TODO: Set your username
|
|
||||||
home = {
|
|
||||||
username = "your-username";
|
|
||||||
homeDirectory = "/home/your-username";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Add stuff for your user as you see fit:
|
|
||||||
# programs.neovim.enable = true;
|
|
||||||
# home.packages = with pkgs; [ steam ];
|
|
||||||
|
|
||||||
# Enable home-manager and git
|
|
||||||
programs.home-manager.enable = true;
|
|
||||||
programs.git.enable = true;
|
|
||||||
|
|
||||||
# Nicely reload system units when changing configs
|
|
||||||
systemd.user.startServices = "sd-switch";
|
|
||||||
|
|
||||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
|
||||||
home.stateVersion = "23.05";
|
|
||||||
}
|
|
60
home-manager/stvnliu/home.nix
Normal file
60
home-manager/stvnliu/home.nix
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
# This is your home-manager configuration file
|
||||||
|
# Use this to configure your home environment (it replaces ~/.config/nixpkgs/home.nix)
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
myUserName = "stvnliu";
|
||||||
|
myEmail = "z.liu@outlook.com.gr";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
# You can import other home-manager modules here
|
||||||
|
imports = [
|
||||||
|
# If you want to use home-manager modules from other flakes (such as nix-colors):
|
||||||
|
# inputs.nix-colors.homeManagerModule
|
||||||
|
|
||||||
|
# You can also split up your configuration and import pieces of it here:
|
||||||
|
# ./nvim.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
nixpkgs = {
|
||||||
|
# You can add overlays here
|
||||||
|
overlays = [
|
||||||
|
# If you want to use overlays exported from other flakes:
|
||||||
|
# neovim-nightly-overlay.overlays.default
|
||||||
|
|
||||||
|
# Or define it inline, for example:
|
||||||
|
# (final: prev: {
|
||||||
|
# hi = final.hello.overrideAttrs (oldAttrs: {
|
||||||
|
# patches = [ ./change-hello-to-hi.patch ];
|
||||||
|
# });
|
||||||
|
# })
|
||||||
|
];
|
||||||
|
# Configure your nixpkgs instance
|
||||||
|
config = {
|
||||||
|
# Disable if you don't want unfree packages
|
||||||
|
allowUnfree = true;
|
||||||
|
# Workaround for https://github.com/nix-community/home-manager/issues/2942
|
||||||
|
allowUnfreePredicate = _: true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home = {
|
||||||
|
username = "${myUserName}";
|
||||||
|
homeDirectory = "/home/${myUserName}";
|
||||||
|
};
|
||||||
|
programs.neovim.enable = true;
|
||||||
|
home.packages = with pkgs; [ protonvpn-gui ];
|
||||||
|
programs.home-manager.enable = true;
|
||||||
|
programs.git.enable = true;
|
||||||
|
programs.firefox.enable = true;
|
||||||
|
# Nicely reload system units when changing configs
|
||||||
|
systemd.user.startServices = "sd-switch";
|
||||||
|
|
||||||
|
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||||
|
home.stateVersion = "24.05";
|
||||||
|
}
|
|
@ -8,15 +8,11 @@
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
myHostName = "homelab-nix";
|
globals = import ./globals.nix;
|
||||||
stevenUserName = "stvnliu";
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
#inputs.hardware.nixosModules.common-cpu-amd
|
|
||||||
#inputs.hardware.nixosModules.common-ssd
|
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./services/display-manager.nix
|
|
||||||
];
|
];
|
||||||
boot.loader = {
|
boot.loader = {
|
||||||
efi.canTouchEfiVariables = true;
|
efi.canTouchEfiVariables = true;
|
||||||
|
@ -36,6 +32,12 @@ in
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
security.polkit.enable = true;
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
programs.sway = {
|
||||||
|
enable = true;
|
||||||
|
wrapperFeatures.gtk = true;
|
||||||
|
};
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
overlays = [
|
overlays = [
|
||||||
];
|
];
|
||||||
|
@ -56,20 +58,18 @@ in
|
||||||
nixPath = lib.mapAttrsToList (n: _: "${n}=flake:${n}") flakeInputs;
|
nixPath = lib.mapAttrsToList (n: _: "${n}=flake:${n}") flakeInputs;
|
||||||
};
|
};
|
||||||
networking = {
|
networking = {
|
||||||
hostName = "${myHostName}";
|
hostName = "${globals.myHostName}";
|
||||||
networkmanager.enable = true;
|
networkmanager.enable = true;
|
||||||
};
|
};
|
||||||
users.users = {
|
users.users = {
|
||||||
"${stevenUserName}" = {
|
"${globals.myUserName}" = {
|
||||||
initialPassword = "stevenpassword";
|
initialPassword = "stevenpassword";
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
openssh.authorizedKeys.keys = [
|
openssh.authorizedKeys.keys = [
|
||||||
];
|
];
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
nh
|
nh
|
||||||
neovim
|
];
|
||||||
gitFull
|
|
||||||
];
|
|
||||||
extraGroups = ["wheel"];
|
extraGroups = ["wheel"];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
4
nixos/globals.nix
Normal file
4
nixos/globals.nix
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
myUserName = "stvnliu";
|
||||||
|
myHostName = "homelab-nix";
|
||||||
|
}
|
34
nixos/nvidia.nix
Normal file
34
nixos/nvidia.nix
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
specialisation = {
|
||||||
|
powersave.configuration = {
|
||||||
|
hardware.nvidia.prime = {
|
||||||
|
offload = {
|
||||||
|
enable = lib.mkForce true;
|
||||||
|
enableOffloadCmd = lib.mkForce true;
|
||||||
|
};
|
||||||
|
sync.enable = lib.mkForce false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
hardware.nvidia = {
|
||||||
|
prime = {
|
||||||
|
offload.enable = false;
|
||||||
|
sync = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
amdgpuBusId = "PCI:5:0:0";
|
||||||
|
nvidiaBusId = "PCI:1:0:0";
|
||||||
|
};
|
||||||
|
forceFullCompositionPipeline = true;
|
||||||
|
modesetting.enable = true;
|
||||||
|
powerManagement.enable = false;
|
||||||
|
powerManagement.finegrained = false;
|
||||||
|
open = true;
|
||||||
|
nvidiaSettings = true;
|
||||||
|
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,11 +0,0 @@
|
||||||
{ pkgs, lib, ... }:
|
|
||||||
{
|
|
||||||
programs.sway = {
|
|
||||||
enable = true;
|
|
||||||
wrapperFeatures.gtk = true;
|
|
||||||
};
|
|
||||||
services.displayManager = {
|
|
||||||
enable = true;
|
|
||||||
execCmd = "${pkgs.lemurs}/bin/lemurs --no-logs";
|
|
||||||
};
|
|
||||||
}
|
|
8
nixos/services/syncthing.service.nix
Normal file
8
nixos/services/syncthing.service.nix
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
{pkgs, lib, ...}:
|
||||||
|
let
|
||||||
|
myUserName = "";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
enable = true;
|
||||||
|
user = ""
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue