another another installer attempt
This commit is contained in:
1982
flake.lock
generated
1982
flake.lock
generated
File diff suppressed because it is too large
Load Diff
48
flake.nix
48
flake.nix
@@ -64,31 +64,52 @@
|
||||
#inherit iso_system;
|
||||
|
||||
specialArgs = {
|
||||
core_inputs = (core_inputs // {host = "live";});
|
||||
core_inputs = (core_inputs // {host = "installer";});
|
||||
};
|
||||
|
||||
modules = [
|
||||
|
||||
({ pkgs, modulesPath, ... }: {
|
||||
({ lib, pkgs, modulesPath, ... }: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/cd-dvd/installation-cd-minimal.nix")
|
||||
];
|
||||
|
||||
environment.etc = {
|
||||
"nixos/disko/default.nix".source = ./system/disko/default.nix;
|
||||
"nixos/disko/disko.nix".source = ./system/disko/disko.nix;
|
||||
"nixos/disko/disko_bonus.nix".source = ./system/disko/disko_bonus.nix;
|
||||
"nixos/disko/impermanent.nix".source = ./system/disko/impermanent.nix;
|
||||
"nixos/impermanence/default.nix".source = ./system/impermanence/default.nix;
|
||||
"nixos/flake.nix".source = ./system/configuration/live/flake.nix;
|
||||
homeconfig = {
|
||||
minimal = true;
|
||||
externalPackages.enable = false;
|
||||
calcurse.enable = false;
|
||||
wayvnc.enable = true;
|
||||
rofi.enable = true;
|
||||
mpd.enable = false;
|
||||
wal.enable = true;
|
||||
ags.enable = true;
|
||||
hyprland.enable = true;
|
||||
swaylock.enable = true;
|
||||
};
|
||||
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
sysconfig = {
|
||||
opts = {
|
||||
firstBoot = true;
|
||||
host = "installer";
|
||||
inherit username;
|
||||
openssh.enable = true;
|
||||
hyprland.enable = true;
|
||||
ags.enable = true;
|
||||
pipewire.enable = true;
|
||||
git.enable = true;
|
||||
steam.enable = false;
|
||||
nh.enable = false;
|
||||
};
|
||||
};
|
||||
|
||||
disko.enable = lib.mkForce false;
|
||||
|
||||
nix.settings = {
|
||||
experimental-features = [ "nix-command" "flakes" ];
|
||||
};
|
||||
|
||||
networking = {
|
||||
hostName = "live";
|
||||
hostName = "installer";
|
||||
firewall.allowedTCPPorts = [ 22 ];
|
||||
};
|
||||
|
||||
@@ -96,6 +117,9 @@
|
||||
|
||||
|
||||
})
|
||||
|
||||
core_inputs.system.module
|
||||
core_inputs.home-manager.nixosModules.home-manager
|
||||
];
|
||||
|
||||
};
|
||||
|
||||
@@ -4,71 +4,68 @@
|
||||
|
||||
(lib.mkIf config.homeconfig.ags.enable {
|
||||
home.file = let
|
||||
files = [
|
||||
"ags/bluetooth.js"
|
||||
"ags/brightness.js"
|
||||
"ags/clock.js"
|
||||
"ags/config.js"
|
||||
"ags/media.js"
|
||||
"ags/notif.js"
|
||||
"ags/notification.js"
|
||||
"ags/power.js"
|
||||
"ags/settings.js"
|
||||
"ags/systemtray.js"
|
||||
"ags/wifi.js"
|
||||
"ags/workspaces.js"
|
||||
];
|
||||
in builtins.mapAttrs (n: v: { source = v; target = n; }) (builtins.listToAttrs (builtins.map (_name: { name = ".config/${_name}"; value = ./${_name}; }) files));
|
||||
})
|
||||
|
||||
(lib.mkIf config.homeconfig.hyprland.enable {
|
||||
home.file = let
|
||||
files = [
|
||||
"Wallpaper/sao.gif"
|
||||
"Wallpaper/sao.png"
|
||||
"Wallpaper/ngnl.jpg"
|
||||
"Wallpaper/llenn.png"
|
||||
"Wallpaper/sinon.gif"
|
||||
"Wallpaper/galaxy.jpg"
|
||||
"Wallpaper/kurisu.gif"
|
||||
"Wallpaper/kurisu.jpg"
|
||||
"Wallpaper/rezero.gif"
|
||||
"Wallpaper/megumin.png"
|
||||
"Wallpaper/megumin1.gif"
|
||||
"Wallpaper/megumin2.gif"
|
||||
"Wallpaper/bluescape.jpg"
|
||||
"Wallpaper/orangescape.jpg"
|
||||
];
|
||||
in builtins.mapAttrs (n: v: { source = v; target = n; }) (builtins.listToAttrs (builtins.map (_name: { name = "Pictures/${_name}"; value = ./${_name}; }) files));
|
||||
dir = "ags";
|
||||
in builtins.mapAttrs (
|
||||
n: v: { source = v.value; target = v.name; }) (
|
||||
builtins.mapAttrs (
|
||||
_name: _value: {
|
||||
name = ".config/${dir}/${_name}"; value = ./${dir}/${_name};
|
||||
}
|
||||
) (builtins.readDir ./${dir})
|
||||
);
|
||||
|
||||
})
|
||||
|
||||
(lib.mkIf config.homeconfig.hyprland.enable {
|
||||
home.file = let
|
||||
files = [
|
||||
"hypr/otf.conf"
|
||||
"hypr/pyprland.toml"
|
||||
"hypr/main.conf"
|
||||
];
|
||||
in builtins.mapAttrs (n: v: { source = v; target = n; }) (builtins.listToAttrs (builtins.map (_name: { name = ".config/${_name}"; value = ./${_name}; }) files));
|
||||
dir = "Wallpaper";
|
||||
in builtins.mapAttrs (
|
||||
n: v: { source = v.value; target = v.name; }) (
|
||||
builtins.mapAttrs (
|
||||
_name: _value: {
|
||||
name = ".config/${dir}/${_name}"; value = ./${dir}/${_name};
|
||||
}
|
||||
) (builtins.readDir ./${dir})
|
||||
);
|
||||
})
|
||||
|
||||
(lib.mkIf config.homeconfig.hyprland.enable {
|
||||
home.file = let
|
||||
dir = "Wallpaper";
|
||||
in builtins.mapAttrs (
|
||||
n: v: { source = v.value; target = v.name; }) (
|
||||
builtins.mapAttrs (
|
||||
_name: _value: {
|
||||
name = ".config/${dir}/${_name}"; value = ./${dir}/${_name};
|
||||
}
|
||||
) (builtins.readDir ./${dir})
|
||||
);
|
||||
})
|
||||
|
||||
(lib.mkIf config.homeconfig.swaylock.enable {
|
||||
home.file = let
|
||||
files = [
|
||||
"swaylock/config"
|
||||
];
|
||||
in builtins.mapAttrs (n: v: { source = v; target = n; }) (builtins.listToAttrs (builtins.map (_name: { name = ".config/${_name}"; value = ./${_name}; }) files));
|
||||
dir = "swaylock";
|
||||
in builtins.mapAttrs (
|
||||
n: v: { source = v.value; target = v.name; }) (
|
||||
builtins.mapAttrs (
|
||||
_name: _value: {
|
||||
name = ".config/${dir}/${_name}"; value = ./${dir}/${_name};
|
||||
}
|
||||
) (builtins.readDir ./${dir})
|
||||
);
|
||||
})
|
||||
|
||||
(lib.mkIf config.homeconfig.wal.enable {
|
||||
home.file = let
|
||||
files = [
|
||||
"wal/templates/cava_config"
|
||||
"wal/templates/colors-ags.css"
|
||||
"wal/templates/colors-discord.css"
|
||||
"wal/templates/colors-hypr.conf"
|
||||
];
|
||||
in builtins.mapAttrs (n: v: { source = v; target = n; }) (builtins.listToAttrs (builtins.map (_name: { name = ".config/${_name}"; value = ./${_name}; }) files));
|
||||
dir = "wal";
|
||||
in builtins.mapAttrs (
|
||||
n: v: { source = v.value; target = v.name; }) (
|
||||
builtins.mapAttrs (
|
||||
_name: _value: {
|
||||
name = ".config/${dir}/${_name}"; value = ./${dir}/${_name};
|
||||
}
|
||||
) (builtins.readDir ./${dir})
|
||||
);
|
||||
})
|
||||
];
|
||||
}
|
||||
|
||||
@@ -32,18 +32,6 @@
|
||||
|
||||
home.homeDirectory = "/home/nathan";
|
||||
|
||||
homeconfig = {
|
||||
calcurse.enable = true;
|
||||
wayvnc.enable = true;
|
||||
rofi.enable = true;
|
||||
mpd.enable = true;
|
||||
wal.enable = true;
|
||||
ags.enable = true;
|
||||
hyprland.enable = true;
|
||||
swaylock.enable = true;
|
||||
};
|
||||
|
||||
|
||||
home.pointerCursor = {
|
||||
gtk.enable = true;
|
||||
package = pkgs.bibata-cursors;
|
||||
@@ -58,8 +46,6 @@
|
||||
iconTheme.name = "Tokyonight-Dark";
|
||||
};
|
||||
|
||||
externalPackages.enable = true;
|
||||
|
||||
services.mpris-proxy.enable = true;
|
||||
|
||||
programs.ssh.enable = true;
|
||||
|
||||
@@ -1,84 +1,101 @@
|
||||
{ pkgs, pkgs-us, self, ... }: {
|
||||
{ config, lib, pkgs, pkgs-us, self, ... }: {
|
||||
|
||||
imports = [
|
||||
self.inputs.scripts.hmModule
|
||||
self.inputs.external.hmModule
|
||||
];
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
options.homeconfig.minimal = lib.options.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
};
|
||||
|
||||
home.packages = with pkgs; let
|
||||
pypkgs = ps: with ps; [
|
||||
numpy
|
||||
pandas
|
||||
torch
|
||||
torchvision
|
||||
torchaudio
|
||||
transformers
|
||||
datasets
|
||||
pyaudio
|
||||
faster-whisper
|
||||
pyusb
|
||||
];
|
||||
config = lib.mkMerge [
|
||||
|
||||
in [
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
killall
|
||||
zip
|
||||
unzip
|
||||
gcc
|
||||
zulu
|
||||
rsync
|
||||
lxqt.lxqt-policykit
|
||||
blueberry
|
||||
wl-clipboard
|
||||
firefox-wayland
|
||||
xfce.thunar
|
||||
grim
|
||||
slurp
|
||||
];
|
||||
}
|
||||
|
||||
(lib.mkIf (!config.homeconfig.minimal) {
|
||||
|
||||
cava
|
||||
gcc
|
||||
android-tools
|
||||
neovim-remote
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
(pkgs.python311.withPackages pypkgs)
|
||||
|
||||
brightnessctl
|
||||
libdbusmenu-gtk3
|
||||
zulu
|
||||
lmms
|
||||
killall
|
||||
#unfree {
|
||||
geogebra
|
||||
#}
|
||||
blueberry
|
||||
wl-clipboard
|
||||
firefox-wayland
|
||||
home.packages = with pkgs; let
|
||||
pypkgs = ps: with ps; [
|
||||
numpy
|
||||
pandas
|
||||
torch
|
||||
torchvision
|
||||
torchaudio
|
||||
transformers
|
||||
datasets
|
||||
pyaudio
|
||||
faster-whisper
|
||||
pyusb
|
||||
];
|
||||
|
||||
neofetch
|
||||
pkgs-us.mpv
|
||||
(ncmpcpp.override { visualizerSupport = true; clockSupport = true; })
|
||||
playerctl
|
||||
mpc-cli
|
||||
xfce.thunar
|
||||
vlc
|
||||
zip
|
||||
unzip
|
||||
pavucontrol
|
||||
yewtube
|
||||
ytmdl
|
||||
ffmpeg_5
|
||||
lxqt.lxqt-policykit
|
||||
rpi-imager
|
||||
rsync
|
||||
grim
|
||||
slurp
|
||||
tigervnc
|
||||
keepassxc
|
||||
httplz
|
||||
in [
|
||||
|
||||
#school?
|
||||
#pkgs-us.digital
|
||||
cava
|
||||
android-tools
|
||||
neovim-remote
|
||||
|
||||
#3D modeling/printing
|
||||
kicad
|
||||
blender
|
||||
freecad
|
||||
cura
|
||||
(pkgs.python311.withPackages pypkgs)
|
||||
|
||||
#productivity
|
||||
libreoffice
|
||||
super-productivity
|
||||
brightnessctl
|
||||
libdbusmenu-gtk3
|
||||
lmms
|
||||
#unfree {
|
||||
geogebra
|
||||
#}
|
||||
|
||||
#games
|
||||
prismlauncher
|
||||
];
|
||||
neofetch
|
||||
pkgs-us.mpv
|
||||
(ncmpcpp.override { visualizerSupport = true; clockSupport = true; })
|
||||
playerctl
|
||||
mpc-cli
|
||||
vlc
|
||||
pavucontrol
|
||||
yewtube
|
||||
ytmdl
|
||||
ffmpeg_5
|
||||
rpi-imager
|
||||
tigervnc
|
||||
keepassxc
|
||||
httplz
|
||||
|
||||
#school?
|
||||
#pkgs-us.digital
|
||||
|
||||
#3D modeling/printing
|
||||
kicad
|
||||
blender
|
||||
freecad
|
||||
cura
|
||||
|
||||
#productivity
|
||||
libreoffice
|
||||
super-productivity
|
||||
|
||||
#games
|
||||
prismlauncher
|
||||
];
|
||||
|
||||
})
|
||||
];
|
||||
|
||||
}
|
||||
|
||||
4
home/packages/external/default.nix
vendored
4
home/packages/external/default.nix
vendored
@@ -1,13 +1,13 @@
|
||||
{ config, lib, pkgs, self, ... }: {
|
||||
|
||||
options = {
|
||||
externalPackages.enable = lib.options.mkOption {
|
||||
homeconfig.externalPackages.enable = lib.options.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.externalPackages.enable {
|
||||
config = lib.mkIf config.homeconfig.externalPackages.enable {
|
||||
home.packages = [
|
||||
self.packages.${pkgs.system}.digital
|
||||
];
|
||||
|
||||
@@ -76,8 +76,8 @@
|
||||
|
||||
environment = {
|
||||
sessionVariables = {
|
||||
WLR_BACKENDS = "headless";
|
||||
WLR_LIBINPUT_NO_DEVICES = "1";
|
||||
# WLR_BACKENDS = "headless";
|
||||
# WLR_LIBINPUT_NO_DEVICES = "1";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
19
system/disko/flake.nix
Normal file
19
system/disko/flake.nix
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
description = "disko config";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
|
||||
disko.url = "github:nix-community/disko";
|
||||
disko.inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
outputs = { self, ... }@inputs: {
|
||||
|
||||
module = { config, lib, pkgs, ... }: {
|
||||
imports = [
|
||||
(import ./default.nix { inherit config lib pkgs; })
|
||||
inputs.disko.nixosModules.default
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
0
system/etc/default.nix
Normal file
0
system/etc/default.nix
Normal file
10
system/impermanence/flake.nix
Normal file
10
system/impermanence/flake.nix
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
description = "nix impermanence config";
|
||||
|
||||
inputs.impermanence.url = "github:nix-community/impermanence";
|
||||
|
||||
outputs = { self, ... }: {
|
||||
|
||||
module = { config, lib, ... }: import ./. { inherit config lib self; };
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user