Initial Setup for Rune
Added vscode as welll
This commit is contained in:
parent
ed852e320b
commit
4f0961448f
11 changed files with 556 additions and 184 deletions
13
common/fastfetch/host/rune.txt
Normal file
13
common/fastfetch/host/rune.txt
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
|
||||||
|
[?25l[0m [38;2;201;171;246;48;2;170;145;205m▄[38;2;198;167;250;48;2;196;166;243m▄[0m[38;2;157;132;205m▄[0m [38;2;42;98;133;48;2;68;158;214m▄[38;2;80;187;253;48;2;70;163;221m▄[48;2;55;130;176m▄[0m [38;2;69;145;208m▄[38;2;85;173;253;48;2;72;159;221m▄[38;2;83;164;244;48;2;53;114;162m▄[0m [0m
|
||||||
|
[7m[38;2;113;96;142m▄[0m[38;2;174;146;228;48;2;194;163;249m▄[38;2;183;153;247;48;2;187;156;248m▄[38;2;173;143;242;48;2;93;77;127m▄[0m [7m[38;2;72;162;224m▄[0m[38;2;86;171;253;48;2;83;180;253m▄[38;2;87;167;253;48;2;76;160;230m▄[38;2;88;163;253;48;2;44;86;128m▄[38;2;90;159;253;48;2;87;168;253m▄[38;2;86;147;239;48;2;88;164;253m▄[0m[7m[38;2;49;89;139m▄[0m [0m
|
||||||
|
[38;2;169;144;202m▄[38;2;203;172;250;48;2;172;146;208m▄[38;2;196;166;249;48;2;168;142;209m▄[38;2;189;159;248;48;2;163;137;210m▄[38;2;182;152;247;48;2;176;147;235m▄[38;2;175;145;246;48;2;179;149;247m▄[38;2;168;138;245;48;2;172;142;246m▄[38;2;161;131;244;48;2;160;131;237m▄[38;2;153;124;243;48;2;147;120;228m▄[38;2;146;117;242;48;2;140;113;226m▄[38;2;139;110;241;48;2;132;105;223m▄[38;2;127;110;241;48;2;104;146;249m▄[38;2;94;147;253;48;2;90;158;253m▄[38;2;94;145;254;48;2;91;154;253m▄[38;2;94;139;251;48;2;92;150;253m▄[0m[7m[38;2;47;74;127m▄[0m [38;2;110;93;135m▄[38;2;155;132;185m▄[0m [0m
|
||||||
|
[7m[38;2;121;102;146m▄[38;2;115;97;144m▄[38;2;111;93;143m▄[38;2;107;90;143m▄[0m[38;2;102;106;245;48;2;134;115;214m▄[38;2;107;106;254;48;2;146;126;249m▄[38;2;93;90;220;48;2;141;122;249m▄[0m[7m[38;2;107;89;178m▄[38;2;86;70;140m▄[38;2;82;66;139m▄[38;2;78;62;138m▄[38;2;74;58;138m▄[38;2;77;93;184m▄[0m[38;2;90;113;228;48;2;97;136;254m▄[38;2;102;123;254;48;2;99;132;254m▄[0m[38;2;97;111;239m▄[0m [38;2;138;116;182m▄[38;2;189;159;239;48;2;197;167;249m░[38;2;199;168;246;48;2;207;176;251m▄[0m [0m
|
||||||
|
[38;2;49;75;132m▄[38;2;61;88;161m▄[38;2;99;132;254;48;2;73;89;183m▄[38;2;100;127;254;48;2;103;119;254m▄[38;2;68;82;171;48;2;104;113;254m▄[0m [38;2;81;80;192;48;2;104;113;254m▄[38;2;110;106;254;48;2;106;109;254m▄[38;2;166;139;247;48;2;112;102;207m▄[38;2;180;150;247;48;2;184;154;248m▄[38;2;182;153;242;48;2;191;161;249m▄[0m[7m[38;2;111;94;140m▄[0m [0m
|
||||||
|
[38;2;48;101;145;48;2;67;132;197m▄[38;2;85;174;253;48;2;88;165;253m▄[38;2;86;169;253;48;2;89;160;253m▄[38;2;88;164;253;48;2;91;155;253m▄[38;2;90;159;253;48;2;92;150;253m▄[38;2;91;154;253;48;2;94;146;254m▄[38;2;93;149;253;48;2;96;141;254m▄[38;2;102;111;228;48;2;92;129;241m▄[0m [38;2;153;125;238;48;2;135;118;246m▄[38;2;164;135;245;48;2;169;139;245m▄[38;2;171;141;246;48;2;176;146;246m▄[38;2;178;148;247;48;2;182;152;247m▄[38;2;185;155;248;48;2;189;159;248m▄[38;2;192;161;249;48;2;196;166;249m▄[38;2;199;168;250;48;2;203;172;250m▄[38;2;155;132;188;48;2;137;117;166m░[0m
|
||||||
|
[38;2;56;124;173m▄[38;2;84;176;253;48;2;85;164;248m▄[38;2;85;170;252;48;2;88;163;253m▄[38;2;110;110;212;48;2;98;148;251m▄[38;2;141;112;241;48;2;132;105;240m▄[38;2;139;111;238;48;2;78;61;139m▄[0m [38;2;142;113;241;48;2;106;85;175m▄[38;2;149;120;242;48;2;153;124;243m▄[38;2;103;83;161;48;2;160;130;244m▄[0m [0m
|
||||||
|
[38;2;80;187;253;48;2;80;187;253m░[38;2;74;173;234;48;2;81;184;253m▄[0m[7m[38;2;51;110;155m▄[0m [38;2;98;80;153;48;2;148;119;241m▄[38;2;158;129;244;48;2;149;120;242m▄[48;2;114;92;184m▄[0m[38;2;99;87;187m▄[38;2;76;74;180m▄[38;2;75;77;180m▄[38;2;73;84;180m▄[38;2;70;91;180m▄[38;2;80;107;203m▄[38;2;103;134;249;48;2;116;91;212m▄[38;2;103;143;249;48;2;137;109;240m▄[38;2;89;141;227;48;2;137;109;229m▄[0m[38;2;60;128;183m▄[38;2;58;134;183m▄[38;2;58;135;183m▄[38;2;55;129;175m▄[0m [0m
|
||||||
|
[7m[38;2;56;130;176m▄[0m [38;2;107;89;151m▄[38;2;174;145;246;48;2;166;137;245m▄[38;2;175;145;246m▄[48;2;161;134;246m▄[38;2;139;122;238;48;2;110;106;254m▄[38;2;85;88;204;48;2;106;109;254m▄[38;2;82;96;204;48;2;103;119;254m▄[38;2;80;103;204;48;2;100;129;254m▄[38;2;91;131;241;48;2;97;138;254m▄[38;2;93;148;253;48;2;93;148;253m░[38;2;90;157;253;48;2;90;158;253m░[38;2;74;141;214;48;2;87;167;253m▄[38;2;60;127;182;48;2;84;177;253m▄[38;2;57;132;180;48;2;81;186;253m▄[38;2;53;123;167;48;2;80;187;253m▄[0m [0m
|
||||||
|
[38;2;128;107;166m▄[38;2;191;160;249;48;2;180;150;244m▄[38;2;191;161;249;48;2;183;153;247m▄[38;2;98;82;128;48;2;183;153;248m▄[38;2;189;159;245m▄[38;2;192;161;249;48;2;179;149;242m▄[0m[38;2;139;117;180m▄[0m [38;2;62;99;169;48;2;93;148;253m▄[38;2;90;157;253;48;2;90;158;253m░[38;2;87;167;253;48;2;71;135;206m▄[0m [0m
|
||||||
|
[38;2;170;144;207;48;2;198;167;249m▄[38;2;191;162;231;48;2;199;168;250m▄[0m[7m[38;2;145;122;182m▄[0m [7m[38;2;113;96;142m▄[0m[38;2;181;154;218;48;2;200;169;250m▄[38;2;199;169;239;48;2;201;170;250m▄[0m[38;2;174;148;209m▄[0m [7m[38;2;82;145;231m▄[0m[38;2;74;142;215;48;2;87;167;253m▄[0m[7m[38;2;75;158;227m▄[0m [0m
|
||||||
|
[?25h
|
10
common/vscode/default.nix
Normal file
10
common/vscode/default.nix
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
programs.vscode = {
|
||||||
|
enable = true;
|
||||||
|
extensions = with pkgs.vscode-extensions; [
|
||||||
|
# bbenoist.Nix
|
||||||
|
# brettm12345.nixfmt-vscode
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
151
flake.nix
151
flake.nix
|
@ -7,19 +7,33 @@
|
||||||
url = "github:nix-community/home-manager";
|
url = "github:nix-community/home-manager";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
zen-browser.url = "github:0xc000022070/zen-browser-flake";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, home-manager, ... }: let
|
outputs =
|
||||||
|
{
|
||||||
|
self,
|
||||||
|
nixpkgs,
|
||||||
|
home-manager,
|
||||||
|
zen-browser,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
ARM = "aarch64-linux"; # ARM systems
|
ARM = "aarch64-linux"; # ARM systems
|
||||||
X86 = "x86_64-linux"; # x86_64 systems
|
X86 = "x86_64-linux"; # x86_64 systems
|
||||||
lib = nixpkgs.lib;
|
lib = nixpkgs.lib;
|
||||||
in {
|
in
|
||||||
|
{
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
caenus = let
|
caenus =
|
||||||
|
let
|
||||||
hostName = "caenus";
|
hostName = "caenus";
|
||||||
default = ./. + "/host/${hostName}";
|
default = ./. + "/host/${hostName}";
|
||||||
in lib.nixosSystem {
|
in
|
||||||
specialArgs = { inherit hostName; };
|
lib.nixosSystem {
|
||||||
|
specialArgs = {
|
||||||
|
inherit hostName;
|
||||||
|
};
|
||||||
system = ARM;
|
system = ARM;
|
||||||
modules = [
|
modules = [
|
||||||
./nix
|
./nix
|
||||||
|
@ -27,11 +41,15 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
cloud = let
|
cloud =
|
||||||
|
let
|
||||||
hostName = "cloud";
|
hostName = "cloud";
|
||||||
default = ./. + "/host/${hostName}";
|
default = ./. + "/host/${hostName}";
|
||||||
in lib.nixosSystem {
|
in
|
||||||
specialArgs = { inherit hostName; };
|
lib.nixosSystem {
|
||||||
|
specialArgs = {
|
||||||
|
inherit hostName;
|
||||||
|
};
|
||||||
system = X86;
|
system = X86;
|
||||||
modules = [
|
modules = [
|
||||||
./nix
|
./nix
|
||||||
|
@ -39,11 +57,15 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
komodo = let
|
komodo =
|
||||||
|
let
|
||||||
hostName = "komodo";
|
hostName = "komodo";
|
||||||
default = ./. + "/host/${hostName}";
|
default = ./. + "/host/${hostName}";
|
||||||
in lib.nixosSystem {
|
in
|
||||||
specialArgs = { inherit hostName; };
|
lib.nixosSystem {
|
||||||
|
specialArgs = {
|
||||||
|
inherit hostName;
|
||||||
|
};
|
||||||
system = X86;
|
system = X86;
|
||||||
modules = [
|
modules = [
|
||||||
./nix
|
./nix
|
||||||
|
@ -51,11 +73,15 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
nix = let
|
nix =
|
||||||
|
let
|
||||||
hostName = "nix";
|
hostName = "nix";
|
||||||
default = ./. + "/host/${hostName}";
|
default = ./. + "/host/${hostName}";
|
||||||
in lib.nixosSystem {
|
in
|
||||||
specialArgs = { inherit hostName; };
|
lib.nixosSystem {
|
||||||
|
specialArgs = {
|
||||||
|
inherit hostName;
|
||||||
|
};
|
||||||
system = X86;
|
system = X86;
|
||||||
modules = [
|
modules = [
|
||||||
./nix
|
./nix
|
||||||
|
@ -63,11 +89,31 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
proxy = let
|
proxy =
|
||||||
|
let
|
||||||
hostName = "proxy";
|
hostName = "proxy";
|
||||||
default = ./. + "/host/${hostName}";
|
default = ./. + "/host/${hostName}";
|
||||||
in lib.nixosSystem {
|
in
|
||||||
specialArgs = { inherit hostName; };
|
lib.nixosSystem {
|
||||||
|
specialArgs = {
|
||||||
|
inherit hostName;
|
||||||
|
};
|
||||||
|
system = X86;
|
||||||
|
modules = [
|
||||||
|
./nix
|
||||||
|
default
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
rune =
|
||||||
|
let
|
||||||
|
hostName = "rune";
|
||||||
|
default = ./. + "/host/${hostName}";
|
||||||
|
in
|
||||||
|
lib.nixosSystem {
|
||||||
|
specialArgs = {
|
||||||
|
inherit hostName;
|
||||||
|
};
|
||||||
system = X86;
|
system = X86;
|
||||||
modules = [
|
modules = [
|
||||||
./nix
|
./nix
|
||||||
|
@ -76,7 +122,8 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
homeConfigurations = let
|
homeConfigurations =
|
||||||
|
let
|
||||||
armPkgs = import nixpkgs {
|
armPkgs = import nixpkgs {
|
||||||
system = ARM;
|
system = ARM;
|
||||||
config.allowUnfree = true;
|
config.allowUnfree = true;
|
||||||
|
@ -86,54 +133,90 @@
|
||||||
config.allowUnfree = true;
|
config.allowUnfree = true;
|
||||||
# overlays = [ (import ./nixos/overlays) ];
|
# overlays = [ (import ./nixos/overlays) ];
|
||||||
};
|
};
|
||||||
in {
|
in
|
||||||
"toph@caenus" = let
|
{
|
||||||
|
"toph@caenus" =
|
||||||
|
let
|
||||||
hostName = "caenus";
|
hostName = "caenus";
|
||||||
pkgs = armPkgs;
|
pkgs = armPkgs;
|
||||||
home = ./. + "/host/${hostName}/home";
|
home = ./. + "/host/${hostName}/home";
|
||||||
in home-manager.lib.homeManagerConfiguration {
|
in
|
||||||
|
home-manager.lib.homeManagerConfiguration {
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
extraSpecialArgs = { inherit hostName; };
|
extraSpecialArgs = {
|
||||||
|
inherit hostName;
|
||||||
|
};
|
||||||
modules = [ home ];
|
modules = [ home ];
|
||||||
};
|
};
|
||||||
|
|
||||||
"toph@cloud" = let
|
"toph@cloud" =
|
||||||
|
let
|
||||||
hostName = "cloud";
|
hostName = "cloud";
|
||||||
pkgs = x86Pkgs;
|
pkgs = x86Pkgs;
|
||||||
home = ./. + "/host/${hostName}/home";
|
home = ./. + "/host/${hostName}/home";
|
||||||
in home-manager.lib.homeManagerConfiguration {
|
in
|
||||||
|
home-manager.lib.homeManagerConfiguration {
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
extraSpecialArgs = { inherit hostName; };
|
extraSpecialArgs = {
|
||||||
|
inherit hostName;
|
||||||
|
};
|
||||||
modules = [ home ];
|
modules = [ home ];
|
||||||
};
|
};
|
||||||
|
|
||||||
"toph@komodo" = let
|
"toph@komodo" =
|
||||||
|
let
|
||||||
hostName = "komodo";
|
hostName = "komodo";
|
||||||
pkgs = x86Pkgs;
|
pkgs = x86Pkgs;
|
||||||
home = ./. + "/host/${hostName}/home";
|
home = ./. + "/host/${hostName}/home";
|
||||||
in home-manager.lib.homeManagerConfiguration {
|
in
|
||||||
|
home-manager.lib.homeManagerConfiguration {
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
extraSpecialArgs = { inherit hostName; };
|
extraSpecialArgs = {
|
||||||
|
inherit hostName;
|
||||||
|
};
|
||||||
modules = [ home ];
|
modules = [ home ];
|
||||||
};
|
};
|
||||||
|
|
||||||
"toph@nix" = let
|
"toph@nix" =
|
||||||
|
let
|
||||||
hostName = "nix";
|
hostName = "nix";
|
||||||
pkgs = x86Pkgs;
|
pkgs = x86Pkgs;
|
||||||
home = ./. + "/host/${hostName}/home";
|
home = ./. + "/host/${hostName}/home";
|
||||||
in home-manager.lib.homeManagerConfiguration {
|
in
|
||||||
|
home-manager.lib.homeManagerConfiguration {
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
extraSpecialArgs = { inherit hostName; };
|
extraSpecialArgs = {
|
||||||
|
inherit hostName;
|
||||||
|
};
|
||||||
modules = [ home ];
|
modules = [ home ];
|
||||||
};
|
};
|
||||||
|
|
||||||
"toph@proxy" = let
|
"toph@proxy" =
|
||||||
|
let
|
||||||
hostName = "proxy";
|
hostName = "proxy";
|
||||||
pkgs = x86Pkgs;
|
pkgs = x86Pkgs;
|
||||||
home = ./. + "/host/${hostName}/home";
|
home = ./. + "/host/${hostName}/home";
|
||||||
in home-manager.lib.homeManagerConfiguration {
|
in
|
||||||
|
home-manager.lib.homeManagerConfiguration {
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
extraSpecialArgs = { inherit hostName; };
|
extraSpecialArgs = {
|
||||||
|
inherit hostName;
|
||||||
|
};
|
||||||
|
modules = [ home ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"toph@rune" =
|
||||||
|
let
|
||||||
|
hostName = "rune";
|
||||||
|
pkgs = x86Pkgs;
|
||||||
|
home = ./. + "/host/${hostName}/home";
|
||||||
|
zen = zen-browser.packages."${X86}".beta;
|
||||||
|
in
|
||||||
|
home-manager.lib.homeManagerConfiguration {
|
||||||
|
inherit pkgs;
|
||||||
|
extraSpecialArgs = {
|
||||||
|
inherit hostName zen;
|
||||||
|
};
|
||||||
modules = [ home ];
|
modules = [ home ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
57
host/rune/default.nix
Normal file
57
host/rune/default.nix
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
{
|
||||||
|
modulesPath,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
hostName,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
## MODULES & IMPORTS ##
|
||||||
|
imports = [
|
||||||
|
# Common Modules
|
||||||
|
../../common/ssh
|
||||||
|
|
||||||
|
# Import hardware configuration.
|
||||||
|
./hardware.nix
|
||||||
|
|
||||||
|
# Modules
|
||||||
|
./modules/steam
|
||||||
|
./modules/gnome
|
||||||
|
];
|
||||||
|
|
||||||
|
## NETWORKING ##
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
|
## ENVIORMENT & PACKAGES ##
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
git
|
||||||
|
micro
|
||||||
|
nixfmt-rfc-style
|
||||||
|
openssh
|
||||||
|
ranger
|
||||||
|
sshfs
|
||||||
|
wget
|
||||||
|
];
|
||||||
|
|
||||||
|
# Enable CUPS to print documents.
|
||||||
|
services.printing.enable = true;
|
||||||
|
|
||||||
|
# Enable sound with pipewire.
|
||||||
|
hardware.pulseaudio.enable = false;
|
||||||
|
security.rtkit.enable = true;
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.java = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.jdk;
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.variables = {
|
||||||
|
HOSTNAME = hostName;
|
||||||
|
};
|
||||||
|
}
|
67
host/rune/hardware.nix
Normal file
67
host/rune/hardware.nix
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
|
||||||
|
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||||
|
|
||||||
|
# Bootloader
|
||||||
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
boot.initrd.availableKernelModules = [
|
||||||
|
"nvme"
|
||||||
|
"xhci_pci"
|
||||||
|
"ahci"
|
||||||
|
"usb_storage"
|
||||||
|
"usbhid"
|
||||||
|
"sd_mod"
|
||||||
|
];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
programs.fuse.userAllowOther = true;
|
||||||
|
|
||||||
|
fileSystems = {
|
||||||
|
"/" = {
|
||||||
|
device = "/dev/disk/by-uuid/28a9ac4d-1e87-4731-9c06-916711d83cb2";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
"/boot" = {
|
||||||
|
device = "/dev/disk/by-uuid/B182-E50E";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [
|
||||||
|
"fmask=0077"
|
||||||
|
"dmask=0077"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
"/pool" = {
|
||||||
|
device = "toph@104.40.4.24:/pool";
|
||||||
|
fsType = "sshfs";
|
||||||
|
options = [
|
||||||
|
"defaults"
|
||||||
|
"reconnect"
|
||||||
|
"_netdev"
|
||||||
|
"allow_other"
|
||||||
|
"identityfile=/home/toph/.ssh/pve"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
# "/home/toph/git" = {
|
||||||
|
# fsType = "none";
|
||||||
|
# device = "/pool/git";
|
||||||
|
# options = ["bind" "nofail"];
|
||||||
|
# };
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [ { device = "/dev/disk/by-uuid/81b6fa27-af94-41d4-9070-8754087a4c26"; } ];
|
||||||
|
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
34
host/rune/home/default.nix
Normal file
34
host/rune/home/default.nix
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
{ pkgs, zen, config, ... }:
|
||||||
|
{
|
||||||
|
# Module imports
|
||||||
|
imports = [
|
||||||
|
# Common Modules
|
||||||
|
../../../common/home
|
||||||
|
../../../common/git
|
||||||
|
../../../common/vscode
|
||||||
|
|
||||||
|
# Modules
|
||||||
|
../modules/gnome/home.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
# Enables app shorcuts
|
||||||
|
targets.genericLinux.enable = true;
|
||||||
|
xdg.mime.enable = true;
|
||||||
|
xdg.systemDirs.data = [ "${config.home.homeDirectory}/.nix-profile/share/applications" ];
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
chafa
|
||||||
|
fastfetch
|
||||||
|
fish
|
||||||
|
fishPlugins.grc
|
||||||
|
fishPlugins.tide
|
||||||
|
grc
|
||||||
|
nodejs_22
|
||||||
|
pnpm
|
||||||
|
prettierd
|
||||||
|
spotify
|
||||||
|
telegram-desktop
|
||||||
|
vesktop
|
||||||
|
zen
|
||||||
|
];
|
||||||
|
}
|
47
host/rune/modules/gnome/default.nix
Normal file
47
host/rune/modules/gnome/default.nix
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
# Enable the X11 windowing system.
|
||||||
|
services.xserver = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
# Enable the GNOME Desktop Environment.
|
||||||
|
displayManager.gdm.enable = true;
|
||||||
|
desktopManager.gnome.enable = true;
|
||||||
|
|
||||||
|
# Configure keymap in X11
|
||||||
|
xkb = {
|
||||||
|
layout = "us";
|
||||||
|
variant = "";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.udev.packages = with pkgs; [ gnome-settings-daemon ];
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
gnome-tweaks
|
||||||
|
gnomeExtensions.appindicator
|
||||||
|
gnomeExtensions.tiling-shell
|
||||||
|
gnomeExtensions.dash-to-panel
|
||||||
|
gnomeExtensions.blur-my-shell
|
||||||
|
];
|
||||||
|
|
||||||
|
environment.gnome.excludePackages = (
|
||||||
|
with pkgs;
|
||||||
|
[
|
||||||
|
atomix # puzzle game
|
||||||
|
epiphany # web browser
|
||||||
|
evince # document viewer
|
||||||
|
gedit # text editor
|
||||||
|
gnome-help
|
||||||
|
gnome-maps
|
||||||
|
gnome-music
|
||||||
|
gnome-photos
|
||||||
|
gnome-terminal
|
||||||
|
gnome-tour
|
||||||
|
hitori # sudoku game
|
||||||
|
iagno # go game
|
||||||
|
tali # poker game
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
|
}
|
17
host/rune/modules/gnome/home.nix
Normal file
17
host/rune/modules/gnome/home.nix
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
|
||||||
|
dconf = {
|
||||||
|
enable = true;
|
||||||
|
settings."org/gnome/shell" = {
|
||||||
|
disable-user-extensions = false;
|
||||||
|
enabled-extensions = with pkgs.gnomeExtensions; [
|
||||||
|
appindicator.extensionUuid
|
||||||
|
blur-my-shell.extensionUuid
|
||||||
|
dash-to-panel.extensionUuid
|
||||||
|
tiling-shell.extensionUuid
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
8
host/rune/modules/steam/default.nix
Normal file
8
host/rune/modules/steam/default.nix
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
programs.steam = {
|
||||||
|
enable = true;
|
||||||
|
# remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
|
||||||
|
# dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
|
||||||
|
# localNetworkGameTransfers.openFirewall = true; # Open ports in the firewall for Steam Local Network Game Transfers
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,4 +1,10 @@
|
||||||
{ modulesPath, config, pkgs, hostName, ... }:
|
{
|
||||||
|
modulesPath,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
hostName,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
|
@ -7,20 +13,36 @@ let
|
||||||
timeZone = "America/New_York";
|
timeZone = "America/New_York";
|
||||||
defaultLocale = "en_US.UTF-8";
|
defaultLocale = "en_US.UTF-8";
|
||||||
|
|
||||||
in {
|
in
|
||||||
|
{
|
||||||
## TIMEZONE & LOCALE ##
|
## TIMEZONE & LOCALE ##
|
||||||
time.timeZone = timeZone;
|
time.timeZone = timeZone;
|
||||||
i18n.defaultLocale = defaultLocale;
|
i18n.defaultLocale = defaultLocale;
|
||||||
|
i18n.extraLocaleSettings = {
|
||||||
|
LC_ADDRESS = defaultLocale;
|
||||||
|
LC_IDENTIFICATION = defaultLocale;
|
||||||
|
LC_MEASUREMENT = defaultLocale;
|
||||||
|
LC_MONETARY = defaultLocale;
|
||||||
|
LC_NAME = defaultLocale;
|
||||||
|
LC_NUMERIC = defaultLocale;
|
||||||
|
LC_PAPER = defaultLocale;
|
||||||
|
LC_TELEPHONE = defaultLocale;
|
||||||
|
LC_TIME = defaultLocale;
|
||||||
|
};
|
||||||
|
|
||||||
## USERS ##
|
## USERS ##
|
||||||
users.mutableUsers = false;
|
users.mutableUsers = false;
|
||||||
users.users."${admin}" = {
|
users.users."${admin}" = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
createHome = true;
|
createHome = true;
|
||||||
|
description = "Toph";
|
||||||
homeMode = "750";
|
homeMode = "750";
|
||||||
home = "/home/${admin}";
|
home = "/home/${admin}";
|
||||||
password = password;
|
password = password;
|
||||||
extraGroups = [ "wheel" ];
|
extraGroups = [
|
||||||
|
"networkmanager"
|
||||||
|
"wheel"
|
||||||
|
];
|
||||||
shell = pkgs.fish;
|
shell = pkgs.fish;
|
||||||
openssh.authorizedKeys.keys = [
|
openssh.authorizedKeys.keys = [
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIClZstYoT64zHnGfE7LMYNiQPN5/gmCt382lC+Ji8lrH PVE"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIClZstYoT64zHnGfE7LMYNiQPN5/gmCt382lC+Ji8lrH PVE"
|
||||||
|
@ -28,17 +50,24 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
# INFO: Enable passwordless sudo.
|
# INFO: Enable passwordless sudo.
|
||||||
security.sudo.extraRules = [{
|
security.sudo.extraRules = [
|
||||||
|
{
|
||||||
users = [ admin ];
|
users = [ admin ];
|
||||||
commands = [{
|
commands = [
|
||||||
|
{
|
||||||
command = "ALL";
|
command = "ALL";
|
||||||
options = [ "NOPASSWD" ];
|
options = [ "NOPASSWD" ];
|
||||||
}];
|
}
|
||||||
}];
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
## PROGRAMS & SERVICES ##
|
## PROGRAMS & SERVICES ##
|
||||||
# Shells
|
# Shells
|
||||||
environment.shells = with pkgs; [ bash fish ];
|
environment.shells = with pkgs; [
|
||||||
|
bash
|
||||||
|
fish
|
||||||
|
];
|
||||||
programs.fish.enable = true;
|
programs.fish.enable = true;
|
||||||
|
|
||||||
## NETWORKING ##
|
## NETWORKING ##
|
||||||
|
@ -55,9 +84,16 @@ in {
|
||||||
systemd.tmpfiles.rules = [
|
systemd.tmpfiles.rules = [
|
||||||
"d /home/toph/git 0750 toph users -"
|
"d /home/toph/git 0750 toph users -"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# Allow unfree packages
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
# forces interfaces to be named predictably
|
# forces interfaces to be named predictably
|
||||||
# This value determines the NixOS release with which your system is to be
|
# This value determines the NixOS release with which your system is to be
|
||||||
system.stateVersion = "24.11";
|
system.stateVersion = "24.11";
|
||||||
# Enable Flakes
|
# Enable Flakes
|
||||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
nix.settings.experimental-features = [
|
||||||
|
"nix-command"
|
||||||
|
"flakes"
|
||||||
|
];
|
||||||
}
|
}
|
Loading…
Add table
Reference in a new issue