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; enableFeatureFreezePing = true;
}; };
lxc = {
members = [
aanderse
adamcstephens
jnsgruk
megheaiulian
mkg20001
];
scope = "All things linuxcontainers. LXC, Incus, LXD and related packages.";
shortName = "lxc";
};
lxqt = { lxqt = {
members = [ members = [
romildo romildo

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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