Compare commits
8 Commits
master
...
home-assis
Author | SHA1 | Date | |
---|---|---|---|
7081c58bd1 | |||
0fbd897b60 | |||
76ff89d7f6 | |||
2544ef3d94 | |||
a7d2db9c84 | |||
db244dc7ea | |||
734338f51e | |||
90931e37ff |
@ -47,7 +47,7 @@
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.extraSpecialArgs = extraSpecialArgs;
|
||||
home-manager.extraSpecialArgs = extraSpecialArgs // { role = "devel"; };
|
||||
home-manager.users.${userName} = import ./home;
|
||||
}
|
||||
];
|
||||
@ -70,7 +70,7 @@
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.extraSpecialArgs = extraSpecialArgs;
|
||||
home-manager.extraSpecialArgs = extraSpecialArgs // { role = "devel"; };
|
||||
home-manager.users.${userName}.imports = [
|
||||
./home
|
||||
];
|
||||
@ -94,7 +94,7 @@
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.extraSpecialArgs = extraSpecialArgs;
|
||||
home-manager.extraSpecialArgs = extraSpecialArgs // { role = "server"; };
|
||||
home-manager.users.${userName}.imports = [
|
||||
./home
|
||||
];
|
||||
|
@ -1,4 +1,5 @@
|
||||
{
|
||||
role,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
@ -9,7 +10,7 @@
|
||||
};
|
||||
|
||||
programs.chromium = {
|
||||
enable = pkgs.stdenv.isLinux;
|
||||
enable = pkgs.stdenv.isLinux && role == "devel";
|
||||
package = pkgs.ungoogled-chromium.override {
|
||||
enableWideVine = true;
|
||||
commandLineArgs = [
|
||||
|
@ -4,6 +4,7 @@
|
||||
userName,
|
||||
userEmail,
|
||||
ghostty,
|
||||
role,
|
||||
...
|
||||
}: let
|
||||
# Have a file sturcture that holds all the configuration files that can't be configured by Nix
|
||||
@ -13,7 +14,7 @@
|
||||
};
|
||||
in {
|
||||
# Import sub modules
|
||||
imports = map (module: import module {inherit lib pkgs dirs userName userEmail ghostty;}) [
|
||||
imports = map (module: import module {inherit lib pkgs dirs userName userEmail ghostty role;}) [
|
||||
./atuin.nix
|
||||
./shell.nix
|
||||
./packages
|
||||
|
@ -1,8 +1,10 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
role,
|
||||
...
|
||||
}: let
|
||||
isDevel = pkgs.stdenv.isLinux && role == "devel";
|
||||
dirs = {
|
||||
defaults = ../defaults;
|
||||
};
|
||||
@ -16,7 +18,7 @@
|
||||
};
|
||||
in {
|
||||
wayland.windowManager.sway = {
|
||||
enable = pkgs.stdenv.isLinux;
|
||||
enable = isDevel;
|
||||
extraOptions = []; # Extra arguments to pass into sway. If sway goes haywire, we might need something in here
|
||||
xwayland = true;
|
||||
systemd.enable = true;
|
||||
@ -29,11 +31,11 @@ in {
|
||||
xdg.configFile."sway/config".source = lib.mkForce (dirs.defaults + /sway/config);
|
||||
xdg.configFile."waybar/config".source = lib.mkForce (dirs.defaults + /waybar/config);
|
||||
xdg.configFile."waybar/style.css".source = lib.mkForce (dirs.defaults + /waybar/style.css);
|
||||
programs.rofi.enable = pkgs.stdenv.isLinux;
|
||||
services.mako.enable = pkgs.stdenv.isLinux;
|
||||
programs.rofi.enable = isDevel;
|
||||
services.mako.enable = isDevel;
|
||||
|
||||
programs.waybar = {
|
||||
enable = pkgs.stdenv.isLinux;
|
||||
enable = isDevel;
|
||||
systemd.enable = true;
|
||||
|
||||
package = pkgs.waybar.overrideAttrs (old: {
|
||||
|
@ -87,7 +87,12 @@
|
||||
|
||||
# Core networking module (see ../../networking/core.nix)
|
||||
network = {
|
||||
firewall.enable = true;
|
||||
firewall = {
|
||||
enable = true;
|
||||
tcpPorts = {
|
||||
allowedPorts = [8123];
|
||||
};
|
||||
};
|
||||
networkManager.enable = true;
|
||||
};
|
||||
|
||||
@ -97,7 +102,37 @@
|
||||
};
|
||||
|
||||
# Add username to groups "wheel" and "video" - more may be added here later
|
||||
users.users.${userName}.extraGroups = ["wheel" "podman" "network"];
|
||||
users.users.${userName} = {
|
||||
extraGroups = ["wheel" "podman" "network"];
|
||||
openssh.authorizedKeys.keys = [
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFV9eSc9L+aJLoKoexq2f/jb5rpyZnhuGiyhS8YQAbaS wyatt@wyattjmiller.com"
|
||||
];
|
||||
};
|
||||
|
||||
users.users.root.openssh.authorizedKeys.keys = [
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFV9eSc9L+aJLoKoexq2f/jb5rpyZnhuGiyhS8YQAbaS wyatt@wyattjmiller.com"
|
||||
];
|
||||
|
||||
# Add Home Assistant service
|
||||
services.home-assistant = {
|
||||
enable = true;
|
||||
extraComponents = [
|
||||
"esphome"
|
||||
"met"
|
||||
"radio_browser"
|
||||
"homeassistant_hardware"
|
||||
"zha"
|
||||
"group"
|
||||
"mikrotik"
|
||||
];
|
||||
config = {
|
||||
# Includes dependencies for a basic setup
|
||||
# https://www.home-assistant.io/integrations/default_config/
|
||||
default_config = {};
|
||||
};
|
||||
};
|
||||
|
||||
security.sudo.wheelNeedsPassword = false;
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
}
|
||||
|
Reference in New Issue
Block a user