refactor and add jitsi
This commit is contained in:
parent
ae7517e994
commit
7f094b80c5
4 changed files with 72 additions and 48 deletions
56
flake.nix
56
flake.nix
|
@ -43,7 +43,7 @@
|
||||||
} @ inputs: let
|
} @ inputs: let
|
||||||
# Supported systems for your flake packages, shell, etc.
|
# Supported systems for your flake packages, shell, etc.
|
||||||
systems = [
|
systems = [
|
||||||
"aarch64-linux"
|
#"aarch64-linux"
|
||||||
"x86_64-linux"
|
"x86_64-linux"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -53,9 +53,9 @@
|
||||||
|
|
||||||
host_helper = hostname: {
|
host_helper = hostname: {
|
||||||
${hostname} = nixpkgs.lib.nixosSystem {
|
${hostname} = nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = {inherit inputs;} // {inherit nixos-unstable;};
|
specialArgs = {inherit inputs;};
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/${hostname}/${hostname}.nix
|
./hosts/${hostname}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -63,64 +63,24 @@
|
||||||
# Your custom packages
|
# Your custom packages
|
||||||
# Accessible through 'nix build', 'nix shell', etc
|
# Accessible through 'nix build', 'nix shell', etc
|
||||||
#packages = forAllSystems (system: import ./pkgs nixpkgs.legacyPackages.${system});
|
#packages = forAllSystems (system: import ./pkgs nixpkgs.legacyPackages.${system});
|
||||||
|
|
||||||
# Formatter for your nix files, available through 'nix fmt'
|
# Formatter for your nix files, available through 'nix fmt'
|
||||||
# Other options beside 'alejandra' include 'nixpkgs-fmt'
|
# Other options beside 'alejandra' include 'nixpkgs-fmt'
|
||||||
formatter = forAllSystems (system: nixpkgs.legacyPackages.${system}.alejandra);
|
formatter = forAllSystems (system: nixpkgs.legacyPackages.${system}.alejandra);
|
||||||
|
|
||||||
# Your custom packages and modifications, exported as overlays
|
# Your custom packages and modifications, exported as overlays
|
||||||
overlays = import ./overlays {inherit inputs;};
|
overlays = import ./overlays {inherit inputs;};
|
||||||
|
|
||||||
# Reusable nixos modules you might want to export
|
# Reusable nixos modules you might want to export
|
||||||
# These are usually stuff you would upstream into nixpkgs
|
# These are usually stuff you would upstream into nixpkgs
|
||||||
#nixosModules = import ./modules/nixos;
|
#nixosModules = import ./modules/nixos;
|
||||||
# Reusable home-manager modules you might want to export
|
|
||||||
# These are usually stuff you would upstream into home-manager
|
|
||||||
#homeManagerModules = import ./modules/home-manager;
|
|
||||||
|
|
||||||
# NixOS configuration entrypoint
|
# NixOS configuration entrypoint
|
||||||
# Available through 'nixos-rebuild --flake .#your-hostname'
|
# Available through 'nixos-rebuild --flake .#your-hostname'
|
||||||
|
# to add more append // (host_helper example);
|
||||||
nixosConfigurations =
|
nixosConfigurations =
|
||||||
host_helper "crocoite"; # // (host_helper example);
|
host_helper "crocoite" //
|
||||||
|
host_helper "jitsi";
|
||||||
|
|
||||||
## Standalone home-manager configuration entrypoint
|
|
||||||
## Available through 'home-manager --flake .#your-username@your-hostname'
|
|
||||||
#homeConfigurations = {
|
|
||||||
# # FIXME replace with your username@hostname
|
|
||||||
# "your-username@your-hostname" = home-manager.lib.homeManagerConfiguration {
|
|
||||||
# pkgs = nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance
|
|
||||||
# extraSpecialArgs = {inherit inputs;};
|
|
||||||
# modules = [
|
|
||||||
# # > Our main home-manager configuration file <
|
|
||||||
# ./home-manager/home.nix
|
|
||||||
# ];
|
|
||||||
# };
|
|
||||||
#};
|
|
||||||
|
|
||||||
packages.x86_64-linux = {
|
|
||||||
factorio = nixos-generators.nixosGenerate {
|
|
||||||
system = "x86_64-linux";
|
|
||||||
modules = [
|
|
||||||
# you can include your own nixos configuration here, i.e.
|
|
||||||
./hosts/factorio/factorio.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
customFormats = {
|
|
||||||
"myFormat" = {
|
|
||||||
lib,
|
|
||||||
modulesPath,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [
|
|
||||||
"${toString modulesPath}/virtualisation/proxmox-lxc.nix"
|
|
||||||
];
|
|
||||||
boot.loader.grub.enable = lib.mkForce false;
|
|
||||||
boot.loader.systemd-boot.enable = lib.mkForce false;
|
|
||||||
formatAttr = "tarball";
|
|
||||||
fileExtension = "asd.tar.xz";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
format = "myFormat";
|
|
||||||
#format = "vmware";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
58
hosts/jitsi/default.nix
Normal file
58
hosts/jitsi/default.nix
Normal file
|
@ -0,0 +1,58 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
# This value determines the NixOS release from which the default
|
||||||
|
# settings for stateful data, like file locations and database versions
|
||||||
|
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||||
|
# this value at the release version of the first install of this system.
|
||||||
|
# Before changing this value read the documentation for this option
|
||||||
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||||
|
system.stateVersion = "24.11"; # Did you read the comment?
|
||||||
|
|
||||||
|
nixpkgs.config = {
|
||||||
|
# Disable if you don't want unfree packages
|
||||||
|
allowUnfree = true;
|
||||||
|
};
|
||||||
|
nix.settings.experimental-features = ["nix-command" "flakes"];
|
||||||
|
|
||||||
|
# https://lix.systems/ Lix is a modern, delicious implementation of the Nix package manager,
|
||||||
|
# focused on correctness, usability, and growth –
|
||||||
|
# and committed to doing right by its community.
|
||||||
|
nix.package = pkgs.lix;
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
#nixos-hardware.nixosModules.lenovo-thinkpad-t14-amd-gen1
|
||||||
|
#./hardware-configuration.nix
|
||||||
|
#./boot.nix
|
||||||
|
#./hardware-configuration.nix
|
||||||
|
|
||||||
|
../../modules/locale.nix
|
||||||
|
#../../modules/game/server/factorio/factorio.nix
|
||||||
|
|
||||||
|
(modulesPath + "/profiles/perlless.nix")
|
||||||
|
(modulesPath + "/profiles/minimal.nix")
|
||||||
|
{
|
||||||
|
environment.defaultPackages = [];
|
||||||
|
boot.kernel.enable = false;
|
||||||
|
boot.isContainer = true;
|
||||||
|
nixpkgs.overlays = [(self: super: {})];
|
||||||
|
}
|
||||||
|
{
|
||||||
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.ens18.useDHCP = lib.mkDefault true;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
disabledModules = [
|
||||||
|
(modulesPath + "/profiles/all-hardware.nix")
|
||||||
|
(modulesPath + "/profiles/base.nix")
|
||||||
|
# <nixpkgs/nixos/modules/profiles/all-hardware.nix>
|
||||||
|
# <nixpkgs/nixos/modules/profiles/base.nix>
|
||||||
|
];
|
||||||
|
}
|
6
hosts/jitsi/hardware-configuration.nix
Normal file
6
hosts/jitsi/hardware-configuration.nix
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue