Merge branch 'main' into Qubasa-main
This commit is contained in:
@@ -76,6 +76,7 @@ Absolutely, let's break down the migration step by step, explaining each action
|
|||||||
```nix
|
```nix
|
||||||
nixosConfigurations = clan-core.lib.buildClan {
|
nixosConfigurations = clan-core.lib.buildClan {
|
||||||
directory = ./.;
|
directory = ./.;
|
||||||
|
specialArgs = {};
|
||||||
machines = {
|
machines = {
|
||||||
example-desktop = {
|
example-desktop = {
|
||||||
nixpkgs.hostPlatform = "x86_64-linux";
|
nixpkgs.hostPlatform = "x86_64-linux";
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ nixpkgs, lib }:
|
{ nixpkgs, clan, lib }:
|
||||||
{ directory # The directory containing the machines subdirectory
|
{ directory # The directory containing the machines subdirectory
|
||||||
, specialArgs ? { } # Extra arguments to pass to nixosSystem i.e. useful to make self available
|
, specialArgs ? { } # Extra arguments to pass to nixosSystem i.e. useful to make self available
|
||||||
, machines ? { } # allows to include machine-specific modules i.e. machines.${name} = { ... }
|
, machines ? { } # allows to include machine-specific modules i.e. machines.${name} = { ... }
|
||||||
@@ -18,6 +18,7 @@ let
|
|||||||
(name: _:
|
(name: _:
|
||||||
nixpkgs.lib.nixosSystem {
|
nixpkgs.lib.nixosSystem {
|
||||||
modules = [
|
modules = [
|
||||||
|
clan.nixosModules.clanCore
|
||||||
(machineSettings name)
|
(machineSettings name)
|
||||||
(machines.${name} or { })
|
(machines.${name} or { })
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ lib, nixpkgs, ... }:
|
{ lib, clan, nixpkgs, ... }:
|
||||||
{
|
{
|
||||||
findNixFiles = folder:
|
findNixFiles = folder:
|
||||||
lib.mapAttrs'
|
lib.mapAttrs'
|
||||||
@@ -14,5 +14,5 @@
|
|||||||
|
|
||||||
jsonschema = import ./jsonschema { inherit lib; };
|
jsonschema = import ./jsonschema { inherit lib; };
|
||||||
|
|
||||||
buildClan = import ./build-clan { inherit lib nixpkgs; };
|
buildClan = import ./build-clan { inherit lib clan nixpkgs; };
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,6 @@
|
|||||||
];
|
];
|
||||||
flake.lib = import ./default.nix {
|
flake.lib = import ./default.nix {
|
||||||
inherit lib;
|
inherit lib;
|
||||||
inherit (inputs) nixpkgs;
|
inherit (inputs) nixpkgs clan;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ def list_command(args: argparse.Namespace) -> None:
|
|||||||
|
|
||||||
def list_directory(directory: Path) -> str:
|
def list_directory(directory: Path) -> str:
|
||||||
if not directory.exists():
|
if not directory.exists():
|
||||||
return "{directory} does not exist"
|
return f"{directory} does not exist"
|
||||||
msg = f"\n{directory} contains:"
|
msg = f"\n{directory} contains:"
|
||||||
for f in directory.iterdir():
|
for f in directory.iterdir():
|
||||||
msg += f"\n {f.name}"
|
msg += f"\n {f.name}"
|
||||||
@@ -81,7 +81,7 @@ def list_directory(directory: Path) -> str:
|
|||||||
def add_member(group_folder: Path, source_folder: Path, name: str) -> None:
|
def add_member(group_folder: Path, source_folder: Path, name: str) -> None:
|
||||||
source = source_folder / name
|
source = source_folder / name
|
||||||
if not source.exists():
|
if not source.exists():
|
||||||
msg = f"{name} does not exist in {source_folder}"
|
msg = f"{name} does not exist in {source_folder}: "
|
||||||
msg += list_directory(source_folder)
|
msg += list_directory(source_folder)
|
||||||
raise ClanError(msg)
|
raise ClanError(msg)
|
||||||
group_folder.mkdir(parents=True, exist_ok=True)
|
group_folder.mkdir(parents=True, exist_ok=True)
|
||||||
@@ -98,7 +98,7 @@ def add_member(group_folder: Path, source_folder: Path, name: str) -> None:
|
|||||||
def remove_member(group_folder: Path, name: str) -> None:
|
def remove_member(group_folder: Path, name: str) -> None:
|
||||||
target = group_folder / name
|
target = group_folder / name
|
||||||
if not target.exists():
|
if not target.exists():
|
||||||
msg = f"{name} does not exist in group in {group_folder}"
|
msg = f"{name} does not exist in group in {group_folder}: "
|
||||||
msg += list_directory(group_folder)
|
msg += list_directory(group_folder)
|
||||||
raise ClanError(msg)
|
raise ClanError(msg)
|
||||||
os.remove(target)
|
os.remove(target)
|
||||||
|
|||||||
@@ -113,7 +113,7 @@ def groups_folder(group: str) -> Path:
|
|||||||
|
|
||||||
def list_directory(directory: Path) -> str:
|
def list_directory(directory: Path) -> str:
|
||||||
if not directory.exists():
|
if not directory.exists():
|
||||||
return "{directory} does not exist"
|
return f"{directory} does not exist"
|
||||||
msg = f"\n{directory} contains:"
|
msg = f"\n{directory} contains:"
|
||||||
for f in directory.iterdir():
|
for f in directory.iterdir():
|
||||||
msg += f"\n {f.name}"
|
msg += f"\n {f.name}"
|
||||||
@@ -125,7 +125,7 @@ def allow_member(
|
|||||||
) -> None:
|
) -> None:
|
||||||
source = source_folder / name
|
source = source_folder / name
|
||||||
if not source.exists():
|
if not source.exists():
|
||||||
msg = f"{name} does not exist in {source_folder}"
|
msg = f"{name} does not exist in {source_folder}: "
|
||||||
msg += list_directory(source_folder)
|
msg += list_directory(source_folder)
|
||||||
raise ClanError(msg)
|
raise ClanError(msg)
|
||||||
group_folder.mkdir(parents=True, exist_ok=True)
|
group_folder.mkdir(parents=True, exist_ok=True)
|
||||||
@@ -148,7 +148,7 @@ def allow_member(
|
|||||||
def disallow_member(group_folder: Path, name: str) -> None:
|
def disallow_member(group_folder: Path, name: str) -> None:
|
||||||
target = group_folder / name
|
target = group_folder / name
|
||||||
if not target.exists():
|
if not target.exists():
|
||||||
msg = f"{name} does not exist in group in {group_folder}"
|
msg = f"{name} does not exist in group in {group_folder}: "
|
||||||
msg += list_directory(group_folder)
|
msg += list_directory(group_folder)
|
||||||
raise ClanError(msg)
|
raise ClanError(msg)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user