commit 7a1c57051641854ff8f47e47e9341e65aab0c1a4
parent d1573752e1369c6518db79be7e87a012bfe44b3c
Author: Vincent Demeester <vincent@sbr.pm>
Date: Mon, 24 Aug 2020 17:48:35 +0100
systems/wakasu: add some options around k8s and openshift
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Diffstat:
5 files changed, 73 insertions(+), 54 deletions(-)
diff --git a/systems/modules/core/config.nix b/systems/modules/core/config.nix
@@ -0,0 +1,17 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+let
+ cfg = config.profiles;
+in
+{
+ options = {
+ profiles.kubernetes = {
+ enable = mkEnableOption "Enable Kubernetes profile";
+ };
+ profiles.openshift = {
+ enable = mkEnableOption "Enable OpenShift profile";
+ crc.enable = mkEnableOption "Enable CodeReady Containers";
+ };
+ };
+}
diff --git a/systems/modules/core/default.nix b/systems/modules/core/default.nix
@@ -1,6 +1,7 @@
{
imports = [
(import ../../../nix).home-manager
+ ./config.nix
./home-manager.nix
./nix.nix
./nur.nix
diff --git a/systems/wakasu.nix b/systems/wakasu.nix
@@ -57,7 +57,6 @@ in
swapDevices = [{ device = "/dev/disk/by-uuid/720200fc-8f27-49a7-85bb-a406b6119d31"; }];
-
profiles = {
home = true;
dev.enable = true;
@@ -68,6 +67,8 @@ in
syncthing.enable = true;
ssh = { enable = true; forwardX11 = true; };
virtualization = { enable = true; nested = true; listenTCP = true; };
+ kubernetes.enable = true;
+ openshift.enable = true;
yubikey.enable = true;
};
programs = {
diff --git a/tasks.org b/tasks.org
@@ -1,6 +1,24 @@
#+TITLE: Home tasks
#+FILETAGS: #home infra configuration dotfiles
+* DONE [#A] Reinstall wakasu
+CLOSED: [2020-07-17 Fri 13:25] SCHEDULED: <2020-07-17 Fri>
+:LOGBOOK:
+- State "DONE" from "STARTED" [2020-07-17 Fri 13:25]
+CLOCK: [2020-07-17 Fri 11:51]--[2020-07-17 Fri 13:25] => 1:34
+:END:
+
+* DONE [#A] Experiment with Xpra on NixOS (wakasu)
+CLOSED: [2020-07-17 Fri 11:19]
+:LOGBOOK:
+- State "DONE" from "TODO" [2020-07-17 Fri 11:19]
+:END:
+:PROPERTIES:
+:CREATED:[2020-06-22 Mon 18:39]
+:END:
+
+On wakasu, in addition to VMs :)
+
* TODO [#A] systems/naruhodo gnome
:PROPERTIES:
:CREATED:[2020-06-25 Thu 05:38]
@@ -27,7 +45,7 @@
- [ ] pomodoro (fixing it ?)
- [ ] [[https://github.com/bjarosze/gnome-bluetooth-quick-connect][bluetooth quick connect]]
-- [ ] [[https://framagit.org/abakkk/DrawOnYourScreen][draw on you screen]]
+- [-] [[https://framagit.org/abakkk/DrawOnYourScreen][draw on you screen]]
- [ ] [[https://github.com/mlutfy/hidetopbar][hide top bar]]
- [ ] [[https://github.com/sindex/no-annoyance][noannoyance]]
- [X] pop-os/shell
@@ -71,24 +89,6 @@
- [ ] Red Hat VPN connection
-* DONE [#A] Reinstall wakasu
-CLOSED: [2020-07-17 Fri 13:25] SCHEDULED: <2020-07-17 Fri>
-:LOGBOOK:
-- State "DONE" from "STARTED" [2020-07-17 Fri 13:25]
-CLOCK: [2020-07-17 Fri 11:51]--[2020-07-17 Fri 13:25] => 1:34
-:END:
-
-* DONE [#A] Experiment with Xpra on NixOS (wakasu)
-CLOSED: [2020-07-17 Fri 11:19]
-:LOGBOOK:
-- State "DONE" from "TODO" [2020-07-17 Fri 11:19]
-:END:
-:PROPERTIES:
-:CREATED:[2020-06-22 Mon 18:39]
-:END:
-
-On wakasu, in addition to VMs :)
-
* TODO [#B] Create a custom iso for easier install
Embedding the install scripts and some helpers for secrets ?
@@ -122,11 +122,6 @@
** TODO More emacs functions ?
-* TODO [#B] Better wireguard support
-
-- support for creating key
-- support for importing keys
-
* TODO [#B] Fedora virt-machine (buildable)
Have a fedora machine ready to run (setup and all, automated of course)
@@ -136,32 +131,6 @@
- [ ] =default.nix= to import others
- [ ] =pkgs= and overlay smooth integration (aka no prefix =my=)
-* TODO [#B] Reset systems at boot
-
-- Looking at https://github.com/nix-community/impermanence
-- Test on hokkaido, replicate on others
-- *Use encryption*
-
-** [[https://grahamc.com/blog/erase-your-darlings][Erase your darlings: immutable infrastructure for mutable systems - Graham Christensen]]
-[2020-06-29 Mon 18:13]
-
-** [[https://mt-caret.github.io/blog/posts/2020-06-29-optin-state.html][Encypted Btrfs Root with Opt-in State on NixOS]]
-[2020-06-29 Mon 17:44]
-
-** [[https://elis.nu/blog/2020/05/nixos-tmpfs-as-root/][NixOS ❄: tmpfs as root]]
-[2020-06-29 Mon 17:46]
-
-** [[https://elis.nu/blog/2020/06/nixos-tmpfs-as-home/][NixOS ❄: tmpfs as home]]
-[2020-06-29 Mon 17:46]
-
-* TODO pkgs, nur and overlay
-
-Take inspiration from there :
-- https://gitlab.com/rycee/nur-expressions/tree/master
-
-(versions, …)
-
-
* TODO [#B] Automate =home= pkgs updates
:PROPERTIES:
:CREATED:[2020-01-19 Sun 12:32]
@@ -191,6 +160,14 @@
*** TODO [[https://www.nmattia.com/posts/2019-09-10-autoupdate.html][Nicolas Mattia – Triggered CI Builds: Automatically Update your Project's Dependencies]]
[2019-10-15 Tue 08:24]
+* TODO pkgs, nur and overlay
+
+Take inspiration from there :
+- https://gitlab.com/rycee/nur-expressions/tree/master
+
+(versions, …)
+
+
* TODO Manage firefox in home-manager
- See [[https://cmacr.ae/post/2020-05-09-managing-firefox-on-macos-with-nix/][Managing Firefox on macOS with Nix - Calum MacRae]]
@@ -252,6 +229,29 @@
Very interesting concept :)
+* TODO [#C] Reset systems at boot
+
+- Looking at https://github.com/nix-community/impermanence
+- Test on hokkaido, replicate on others
+- *Use encryption*
+
+** [[https://grahamc.com/blog/erase-your-darlings][Erase your darlings: immutable infrastructure for mutable systems - Graham Christensen]]
+[2020-06-29 Mon 18:13]
+
+** [[https://mt-caret.github.io/blog/posts/2020-06-29-optin-state.html][Encypted Btrfs Root with Opt-in State on NixOS]]
+[2020-06-29 Mon 17:44]
+
+** [[https://elis.nu/blog/2020/05/nixos-tmpfs-as-root/][NixOS ❄: tmpfs as root]]
+[2020-06-29 Mon 17:46]
+
+** [[https://elis.nu/blog/2020/06/nixos-tmpfs-as-home/][NixOS ❄: tmpfs as home]]
+[2020-06-29 Mon 17:46]
+
+* TODO [#C] Better wireguard support
+
+- support for creating key
+- support for importing keys
+
* TODO [#C] =qemu=/=kvm= setup to tests things
- start a system with nixos iso (cache and download)
diff --git a/users/vincent/default.nix b/users/vincent/default.nix
@@ -64,8 +64,8 @@ in
++ optionals config.profiles.docker.enable [{
home.packages = with pkgs; [ docker docker-compose ];
}]
- ++ optionals (isContainersEnabled && config.profiles.dev.enable) [
- (import ./containers)
- ]
+ ++ optionals (isContainersEnabled && config.profiles.dev.enable) [ (import ./containers) ]
+ ++ optionals config.profiles.kubernetes.enable [ (import ./containers/kubernetes.nix) ]
+ ++ optionals config.profiles.openshift.enable [ (import ./containers/openshift.nix) ]
);
}