Merge pull request #271689 from adamcstephens/lxc/team

treewide: init lxc team and take ownership of components
This commit is contained in:
Adam C. Stephens 2023-12-06 13:55:45 -05:00 committed by GitHub
commit b1f7f1ce6d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
28 changed files with 88 additions and 60 deletions

View File

@ -562,6 +562,18 @@ with lib.maintainers; {
enableFeatureFreezePing = true;
};
lxc = {
members = [
aanderse
adamcstephens
jnsgruk
megheaiulian
mkg20001
];
scope = "All things linuxcontainers. LXC, Incus, LXD and related packages.";
shortName = "lxc";
};
lxqt = {
members = [
romildo

View File

@ -5,7 +5,9 @@ let
preseedFormat = pkgs.formats.yaml { };
in
{
meta.maintainers = [ lib.maintainers.adamcstephens ];
meta = {
maintainers = lib.teams.lxc.members;
};
options = {
virtualisation.incus = {

View File

@ -1,7 +1,9 @@
{ lib, config, pkgs, ... }:
{
meta.maintainers = with lib.maintainers; [ adamcstephens ];
meta = {
maintainers = lib.teams.lxc.members;
};
imports = [
./lxc-instance-common.nix

View File

@ -2,21 +2,19 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.virtualisation.lxc;
in
{
###### interface
meta = {
maintainers = lib.teams.lxc.members;
};
options.virtualisation.lxc = {
enable =
mkOption {
type = types.bool;
lib.mkOption {
type = lib.types.bool;
default = false;
description =
lib.mdDoc ''
@ -27,8 +25,8 @@ in
};
systemConfig =
mkOption {
type = types.lines;
lib.mkOption {
type = lib.types.lines;
default = "";
description =
lib.mdDoc ''
@ -38,8 +36,8 @@ in
};
defaultConfig =
mkOption {
type = types.lines;
lib.mkOption {
type = lib.types.lines;
default = "";
description =
lib.mdDoc ''
@ -49,8 +47,8 @@ in
};
usernetConfig =
mkOption {
type = types.lines;
lib.mkOption {
type = lib.types.lines;
default = "";
description =
lib.mdDoc ''
@ -62,7 +60,7 @@ in
###### implementation
config = mkIf cfg.enable {
config = lib.mkIf cfg.enable {
environment.systemPackages = [ pkgs.lxc ];
environment.etc."lxc/lxc.conf".text = cfg.systemConfig;
environment.etc."lxc/lxc-usernet".text = cfg.usernetConfig;

View File

@ -2,18 +2,18 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.virtualisation.lxc.lxcfs;
in {
meta.maintainers = [ maintainers.mic92 ];
meta = {
maintainers = lib.teams.lxc.members;
};
###### interface
options.virtualisation.lxc.lxcfs = {
enable =
mkOption {
type = types.bool;
lib.mkOption {
type = lib.types.bool;
default = false;
description = lib.mdDoc ''
This enables LXCFS, a FUSE filesystem for LXC.
@ -27,7 +27,7 @@ in {
};
###### implementation
config = mkIf cfg.enable {
config = lib.mkIf cfg.enable {
systemd.services.lxcfs = {
description = "FUSE filesystem for LXC";
wantedBy = [ "multi-user.target" ];

View File

@ -45,7 +45,9 @@ let
chown -R root:root "$PREFIX"
'';
in {
meta.maintainers = with lib.maintainers; [ adamcstephens ];
meta = {
maintainers = lib.teams.lxc.members;
};
options = {
virtualisation.lxd.agent.enable = lib.mkEnableOption (lib.mdDoc "Enable LXD agent");

View File

@ -6,6 +6,10 @@ let
then "ttyS0"
else "ttyAMA0"; # aarch64
in {
meta = {
maintainers = lib.teams.lxc.members;
};
imports = [
./lxc-instance-common.nix

View File

@ -6,12 +6,14 @@ let
cfg = config.virtualisation.lxd;
preseedFormat = pkgs.formats.yaml {};
in {
meta = {
maintainers = lib.teams.lxc.members;
};
imports = [
(lib.mkRemovedOptionModule [ "virtualisation" "lxd" "zfsPackage" ] "Override zfs in an overlay instead to override it globally")
];
###### interface
options = {
virtualisation.lxd = {
enable = lib.mkOption {

View File

@ -14,7 +14,9 @@ in
{
name = "incus-container";
meta.maintainers = with lib.maintainers; [ adamcstephens ];
meta = {
maintainers = lib.teams.lxc.members;
};
nodes.machine = { ... }: {
virtualisation = {

View File

@ -3,7 +3,9 @@ import ../make-test-python.nix ({ pkgs, lib, ... } :
{
name = "incus-preseed";
meta.maintainers = with lib.maintainers; [ adamcstephens ];
meta = {
maintainers = lib.teams.lxc.members;
};
nodes.machine = { lib, ... }: {
virtualisation = {

View File

@ -3,7 +3,9 @@ import ../make-test-python.nix ({ pkgs, lib, ... } :
{
name = "incus-socket-activated";
meta.maintainers = with lib.maintainers; [ adamcstephens ];
meta = {
maintainers = lib.teams.lxc.members;
};
nodes.machine = { lib, ... }: {
virtualisation = {

View File

@ -19,7 +19,9 @@ in
{
name = "incus-virtual-machine";
meta.maintainers = with lib.maintainers; [ adamcstephens ];
meta = {
maintainers = lib.teams.lxc.members;
};
nodes.machine = {...}: {
virtualisation = {

View File

@ -18,8 +18,8 @@ let
in {
name = "lxd-container";
meta = with pkgs.lib.maintainers; {
maintainers = [ patryk27 adamcstephens ];
meta = {
maintainers = lib.teams.lxc.members;
};
nodes.machine = { lib, ... }: {

View File

@ -5,11 +5,11 @@
# iptables to nftables requires a full reboot, which is a bit hard inside NixOS
# tests.
import ../make-test-python.nix ({ pkgs, ...} : {
import ../make-test-python.nix ({ pkgs, lib, ...} : {
name = "lxd-nftables";
meta = with pkgs.lib.maintainers; {
maintainers = [ patryk27 ];
meta = {
maintainers = lib.teams.lxc.members;
};
nodes.machine = { lib, ... }: {

View File

@ -4,7 +4,7 @@ import ../make-test-python.nix ({ pkgs, lib, ... } :
name = "lxd-preseed";
meta = {
maintainers = with lib.maintainers; [ adamcstephens ];
maintainers = lib.teams.lxc.members;
};
nodes.machine = { lib, ... }: {

View File

@ -1,8 +1,8 @@
import ../make-test-python.nix ({ pkgs, lib, ... }: {
name = "lxd-ui";
meta = with pkgs.lib.maintainers; {
maintainers = [ jnsgruk ];
meta = {
maintainers = lib.teams.lxc.members;
};
nodes.machine = { lib, ... }: {

View File

@ -18,8 +18,8 @@ let
in {
name = "lxd-virtual-machine";
meta = with pkgs.lib.maintainers; {
maintainers = [adamcstephens];
meta = {
maintainers = lib.teams.lxc.members;
};
nodes.machine = {lib, ...}: {

View File

@ -51,7 +51,7 @@ stdenv.mkDerivation (finalAttrs: {
description = "Embeddable, replicated and fault tolerant SQL engine";
homepage = "https://github.com/cowsql/cowsql";
license = licenses.lgpl3Only;
maintainers = with maintainers; [ adamcstephens ];
maintainers = teams.lxc.members;
platforms = platforms.unix;
};
})

View File

@ -95,7 +95,7 @@ buildGoModule rec {
homepage = "https://linuxcontainers.org/incus";
changelog = "https://github.com/lxc/incus/releases/tag/incus-${version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ adamcstephens ];
maintainers = lib.teams.lxc.members;
platforms = lib.platforms.linux;
};
}

View File

@ -33,7 +33,7 @@ buildGoModule rec {
description = "LXD to Incus migration tool";
homepage = "https://linuxcontainers.org/incus";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ adamcstephens ];
maintainers = lib.teams.lxc.members;
platforms = lib.platforms.linux;
};
}

View File

@ -54,6 +54,6 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/cowsql/raft";
license = licenses.lgpl3Only;
platforms = platforms.linux;
maintainers = with maintainers; [ adamcstephens ];
maintainers = teams.lxc.members;
};
}

View File

@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
'';
homepage = "https://dqlite.io/";
license = licenses.asl20;
maintainers = with maintainers; [ joko adamcstephens ];
maintainers = teams.lxc.members;
platforms = platforms.linux;
};
}

View File

@ -50,6 +50,6 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/canonical/raft";
license = licenses.asl20;
platforms = platforms.linux;
maintainers = with maintainers; [ wucke13 adamcstephens ];
maintainers = teams.lxc.members;
};
}

View File

@ -6,7 +6,6 @@
, libcap ? null, systemd ? null
}:
with lib;
stdenv.mkDerivation rec {
pname = "lxc";
version = "4.0.12";
@ -48,10 +47,10 @@ stdenv.mkDerivation rec {
"--disable-api-docs"
"--with-init-script=none"
"--with-distro=nixos" # just to be sure it is "unknown"
] ++ optional (libapparmor != null) "--enable-apparmor"
++ optional (libselinux != null) "--enable-selinux"
++ optional (libseccomp != null) "--enable-seccomp"
++ optional (libcap != null) "--enable-capabilities"
] ++ lib.optional (libapparmor != null) "--enable-apparmor"
++ lib.optional (libselinux != null) "--enable-selinux"
++ lib.optional (libseccomp != null) "--enable-seccomp"
++ lib.optional (libcap != null) "--enable-capabilities"
++ [
"--disable-examples"
"--enable-python"
@ -90,7 +89,7 @@ stdenv.mkDerivation rec {
meta = {
homepage = "https://linuxcontainers.org/";
description = "Userspace tools for Linux Containers, a lightweight virtualization system";
license = licenses.lgpl21Plus;
license = lib.licenses.lgpl21Plus;
longDescription = ''
LXC is the userspace control package for Linux Containers, a
@ -100,7 +99,7 @@ stdenv.mkDerivation rec {
mechanisms to Linuxs existing process management infrastructure.
'';
platforms = platforms.linux;
maintainers = with maintainers; [ ];
platforms = lib.platforms.linux;
maintainers = lib.teams.lxc.members;
};
}

View File

@ -2,7 +2,6 @@
, util-linux, makeWrapper
, enableDebugBuild ? config.lxcfs.enableDebugBuild or false }:
with lib;
stdenv.mkDerivation rec {
pname = "lxcfs";
version = "4.0.12";
@ -48,8 +47,8 @@ stdenv.mkDerivation rec {
description = "FUSE filesystem for LXC";
homepage = "https://linuxcontainers.org/lxcfs";
changelog = "https://linuxcontainers.org/lxcfs/news/";
license = licenses.asl20;
platforms = platforms.linux;
maintainers = with maintainers; [ ];
license = lib.licenses.asl20;
platforms = lib.platforms.linux;
maintainers = lib.teams.lxc.members;
};
}

View File

@ -87,7 +87,7 @@ buildGoModule rec {
homepage = "https://ubuntu.com/lxd";
changelog = "https://github.com/canonical/lxd/releases/tag/lxd-${version}";
license = licenses.asl20;
maintainers = with maintainers; [ marsam adamcstephens ];
maintainers = teams.lxc.members;
platforms = platforms.linux;
};
}

View File

@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
description = "Web user interface for LXD.";
homepage = "https://github.com/canonical/lxd-ui";
license = lib.licenses.gpl3;
maintainers = with lib.maintainers; [ jnsgruk ];
maintainers = lib.teams.lxc.members;
platforms = lib.platforms.linux;
};
}

View File

@ -60,7 +60,7 @@ buildGoModule rec {
description = "System container image builder for LXC and LXD";
homepage = "https://github.com/lxc/distrobuilder";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ megheaiulian adamcstephens ];
maintainers = lib.teams.lxc.members;
platforms = lib.platforms.linux;
mainProgram = "distrobuilder";
};