add airy
This commit is contained in:
parent
f04b07ce3b
commit
1b67f19e18
9 changed files with 106 additions and 39 deletions
11
flake.nix
11
flake.nix
|
@ -137,17 +137,22 @@
|
||||||
"x86_64-linux".default = mkShell nixpkgs-stable "x86_64-linux";
|
"x86_64-linux".default = mkShell nixpkgs-stable "x86_64-linux";
|
||||||
"aarch64-linux".default = mkShell nixpkgs-stable "aarch64-linux";
|
"aarch64-linux".default = mkShell nixpkgs-stable "aarch64-linux";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Expose the package set, including overlays, for convenience.
|
||||||
|
darwinPackages = self.darwinConfigurations."airy".pkgs;
|
||||||
darwinConfigurations = {
|
darwinConfigurations = {
|
||||||
"FORM3-CYRYLPLOTN" = darwin.lib.darwinSystem rec {
|
"airy" = darwin.lib.darwinSystem rec {
|
||||||
system = "x86_64-darwin";
|
system = "aarch64-darwin";
|
||||||
modules = [
|
modules = [
|
||||||
(./. + "/nixos/boxes/form3")
|
(./. + "/nixos/boxes/airy")
|
||||||
|
{users.users.cyryl.home = "/Users/cyryl";}
|
||||||
home-manager.darwinModules.home-manager
|
home-manager.darwinModules.home-manager
|
||||||
{
|
{
|
||||||
home-manager = {
|
home-manager = {
|
||||||
useGlobalPkgs = true;
|
useGlobalPkgs = true;
|
||||||
useUserPackages = true;
|
useUserPackages = true;
|
||||||
users.cyryl = {
|
users.cyryl = {
|
||||||
|
home.homeDirectory = "/Users/cyryl";
|
||||||
imports = [./nixos/home-manager];
|
imports = [./nixos/home-manager];
|
||||||
_module.args.inputs = inputs;
|
_module.args.inputs = inputs;
|
||||||
_module.args.system = system;
|
_module.args.system = system;
|
||||||
|
|
38
nixos/boxes/airy/default.nix
Normal file
38
nixos/boxes/airy/default.nix
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
lib,
|
||||||
|
nixpkgs-nixos-unstable-and-unfree,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
environment.systemPackages = with pkgs; [vim nixfmt];
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
../../git
|
||||||
|
|
||||||
|
../../helix
|
||||||
|
../../mercurial
|
||||||
|
../../vim
|
||||||
|
../../zsh
|
||||||
|
];
|
||||||
|
services.nix-daemon.enable = true;
|
||||||
|
|
||||||
|
nix.settings.experimental-features = "nix-command flakes";
|
||||||
|
|
||||||
|
programs.zsh.enable = true; # default shell on catalina
|
||||||
|
|
||||||
|
system.stateVersion = 4;
|
||||||
|
|
||||||
|
# The platform the configuration will be used on.
|
||||||
|
nixpkgs.hostPlatform = "aarch64-darwin";
|
||||||
|
|
||||||
|
homebrew.enable = true;
|
||||||
|
|
||||||
|
home-manager.users.cyryl = {...}: {
|
||||||
|
imports = [];
|
||||||
|
home.packages = with pkgs; [awscli kubectl cargo-update];
|
||||||
|
programs = {
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,9 +1,12 @@
|
||||||
{ config, pkgs, ... }:
|
{
|
||||||
let
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
genericBackupPath = "/var/lib/backups/";
|
genericBackupPath = "/var/lib/backups/";
|
||||||
nixosContainersBackupPath = "/var/lib/nixos-containers/";
|
nixosContainersBackupPath = "/var/lib/nixos-containers/";
|
||||||
in rec {
|
in rec {
|
||||||
environment.systemPackages = with pkgs; [ restic ];
|
environment.systemPackages = with pkgs; [restic];
|
||||||
|
|
||||||
sops.secrets."restic-backups-b2-repo-password" = {
|
sops.secrets."restic-backups-b2-repo-password" = {
|
||||||
sopsFile = ./restic.sops.yaml;
|
sopsFile = ./restic.sops.yaml;
|
||||||
|
@ -39,10 +42,9 @@ in rec {
|
||||||
systemctl start container@foundryvtt.service
|
systemctl start container@foundryvtt.service
|
||||||
systemctl start --all mastodon*
|
systemctl start --all mastodon*
|
||||||
'';
|
'';
|
||||||
timerConfig = { OnCalendar = "daily"; };
|
timerConfig = {OnCalendar = "daily";};
|
||||||
environmentFile =
|
environmentFile = "${config.sops.secrets.restic-backups-b2-environment.path}";
|
||||||
"${config.sops.secrets.restic-backups-b2-environment.path}";
|
exclude = ["cache"];
|
||||||
exclude = [ "cache" ];
|
|
||||||
pruneOpts = [
|
pruneOpts = [
|
||||||
"--keep-hourly 25"
|
"--keep-hourly 25"
|
||||||
"--keep-daily 8"
|
"--keep-daily 8"
|
||||||
|
@ -50,7 +52,7 @@ in rec {
|
||||||
"--keep-monthly 13"
|
"--keep-monthly 13"
|
||||||
"--keep-yearly 2"
|
"--keep-yearly 2"
|
||||||
];
|
];
|
||||||
checkOpts = [ "--with-cache" ];
|
checkOpts = ["--with-cache"];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,11 @@
|
||||||
{ config, pkgs, inputs, lib, system, ... }:
|
{
|
||||||
let
|
config,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
lib,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
unstable = inputs.nixpkgs-nixos-unstable;
|
unstable = inputs.nixpkgs-nixos-unstable;
|
||||||
package = unstable.legacyPackages."${system}".forgejo;
|
package = unstable.legacyPackages."${system}".forgejo;
|
||||||
httpPort = 8083;
|
httpPort = 8083;
|
||||||
|
@ -22,20 +28,19 @@ let
|
||||||
};
|
};
|
||||||
groups."${systemGroupName}" = {
|
groups."${systemGroupName}" = {
|
||||||
inherit gid;
|
inherit gid;
|
||||||
members = [ "${systemUserName}" "nginx" ];
|
members = ["${systemUserName}" "nginx"];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
imports =
|
imports = [../nginx.nix "${unstable}/nixos/modules/services/misc/forgejo.nix"];
|
||||||
[ ../nginx.nix "${unstable}/nixos/modules/services/misc/forgejo.nix" ];
|
disabledModules = ["services/misc/forgejo.nix"];
|
||||||
disabledModules = [ "services/misc/forgejo.nix" ];
|
|
||||||
|
|
||||||
inherit users;
|
inherit users;
|
||||||
|
|
||||||
boot.kernel.sysctl = { "net.ipv4.ip_unprivileged_port_start" = 0; };
|
boot.kernel.sysctl = {"net.ipv4.ip_unprivileged_port_start" = 0;};
|
||||||
systemd.services.systemd-sysctl.enable = lib.mkForce true;
|
systemd.services.systemd-sysctl.enable = lib.mkForce true;
|
||||||
|
|
||||||
networking.firewall.allowedTCPPorts = [ sshPort ];
|
networking.firewall.allowedTCPPorts = [sshPort];
|
||||||
services.nginx = {
|
services.nginx = {
|
||||||
virtualHosts = {
|
virtualHosts = {
|
||||||
"${domain}" = {
|
"${domain}" = {
|
||||||
|
|
|
@ -1,8 +1,12 @@
|
||||||
{ config, pkgs, ... }: {
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
console.keyMap = "pl2";
|
console.keyMap = "pl2";
|
||||||
imports = [ ./tailscale ];
|
imports = [./tailscale];
|
||||||
services = {
|
services = {
|
||||||
udev.packages = [ pkgs.android-udev-rules ];
|
udev.packages = [pkgs.android-udev-rules];
|
||||||
ratbagd.enable = true;
|
ratbagd.enable = true;
|
||||||
|
|
||||||
gvfs.enable = true;
|
gvfs.enable = true;
|
||||||
|
|
|
@ -1,10 +1,15 @@
|
||||||
{ config, pkgs, ... }: {
|
{
|
||||||
services = { };
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
services = {};
|
||||||
|
|
||||||
xsession = { enable = false; };
|
xsession = {enable = false;};
|
||||||
|
|
||||||
home.sessionVariables = { QT_QPA_PLATFORM = "wayland"; };
|
home.sessionVariables = {QT_QPA_PLATFORM = "wayland";};
|
||||||
home.packages = (with pkgs; [ gnome-usage gnome3.gnome-tweaks ])
|
home.packages =
|
||||||
|
(with pkgs; [gnome-usage gnome3.gnome-tweaks])
|
||||||
++ (with pkgs.gnomeExtensions; [
|
++ (with pkgs.gnomeExtensions; [
|
||||||
caffeine
|
caffeine
|
||||||
clipboard-indicator
|
clipboard-indicator
|
||||||
|
@ -14,7 +19,7 @@
|
||||||
dconf.settings = {
|
dconf.settings = {
|
||||||
"org/gnome/mutter" = {
|
"org/gnome/mutter" = {
|
||||||
# https://github.com/NixOS/nixpkgs/issues/114514#issuecomment-1177709271
|
# https://github.com/NixOS/nixpkgs/issues/114514#issuecomment-1177709271
|
||||||
experimental-features = [ "scale-monitor-framebuffer" ];
|
experimental-features = ["scale-monitor-framebuffer"];
|
||||||
};
|
};
|
||||||
"org/gnome/shell" = {
|
"org/gnome/shell" = {
|
||||||
disable-user-extensions = false;
|
disable-user-extensions = false;
|
||||||
|
|
|
@ -1,4 +1,10 @@
|
||||||
{ config, pkgs, inputs, system, ... }: {
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
(pass.withExtensions (ext: [
|
(pass.withExtensions (ext: [
|
||||||
ext.pass-otp
|
ext.pass-otp
|
||||||
|
@ -16,7 +22,6 @@
|
||||||
bottom
|
bottom
|
||||||
curl
|
curl
|
||||||
dive
|
dive
|
||||||
dmidecode
|
|
||||||
dnsutils
|
dnsutils
|
||||||
docker-compose
|
docker-compose
|
||||||
du-dust
|
du-dust
|
||||||
|
@ -53,7 +58,6 @@
|
||||||
unzip
|
unzip
|
||||||
wget
|
wget
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
xdotool
|
inputs.nixpkgs-nixos-unstable.legacyPackages."${system}".yt-dlp
|
||||||
inputs.nixpkgs-nixos-unstable.legacyPackages."x86_64-linux".yt-dlp
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,6 +12,7 @@
|
||||||
atop
|
atop
|
||||||
btop
|
btop
|
||||||
btrfs-progs
|
btrfs-progs
|
||||||
|
dmidecode
|
||||||
glibcLocales
|
glibcLocales
|
||||||
hsetroot
|
hsetroot
|
||||||
lm_sensors
|
lm_sensors
|
||||||
|
@ -24,5 +25,6 @@
|
||||||
topgrade
|
topgrade
|
||||||
wirelesstools
|
wirelesstools
|
||||||
woeusb
|
woeusb
|
||||||
|
xdotool
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,13 @@
|
||||||
{ config, pkgs, ... }: {
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
services = {
|
services = {
|
||||||
|
|
||||||
kdeconnect.enable = true;
|
kdeconnect.enable = true;
|
||||||
kdeconnect.indicator = true;
|
kdeconnect.indicator = true;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
home.packages = [ ];
|
home.packages = [];
|
||||||
dconf.settings = { };
|
dconf.settings = {};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue