summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorsils <sils@sils.li>2023-01-20 22:30:51 +0100
committersils <sils@sils.li>2023-01-20 22:30:51 +0100
commit4de07126a087bb031739932ff21a55c5fad25769 (patch)
tree76f53b85a5d312c5d92af41e749c908079f5d88c
parentFeat: User configuration, with secure passwords (diff)
parentMerge pull request 'server1_rust-motd' (#11) from server1_rust-motd into server1 (diff)
downloadnixos-server-4de07126a087bb031739932ff21a55c5fad25769.tar.gz
nixos-server-4de07126a087bb031739932ff21a55c5fad25769.zip
Merge branch 'server1' into server1_users
-rw-r--r--configuration.nix2
-rw-r--r--services/rust-motd.nix76
2 files changed, 78 insertions, 0 deletions
diff --git a/configuration.nix b/configuration.nix
index baf982a..1c06bb2 100644
--- a/configuration.nix
+++ b/configuration.nix
@@ -6,6 +6,8 @@
     ./users.nix
     ./services/minecraft.nix
 
+    ./services/minecraft.nix
+    ./services/rust-motd.nix
   ];
 
   boot.cleanTmpDir = true;
diff --git a/services/rust-motd.nix b/services/rust-motd.nix
new file mode 100644
index 0000000..6ff9367
--- /dev/null
+++ b/services/rust-motd.nix
@@ -0,0 +1,76 @@
+{
+  config,
+  pkgs,
+  ...
+}: {
+  programs.rust-motd = {
+    enable = true;
+    enableMotdInSSHD = true;
+    refreshInterval = "*:0/5"; # 0/5 means: hour 0 AND all hour wich match (0 + 5 * x) (is the same as: 0, 5, 10, 15, 20)
+    settings = {
+      global = {
+        progress_full_character = "=";
+        progress_empty_character = "-";
+        progress_prefix = "[";
+        progress_suffix = "]";
+        time_format = "%Y-%m-%d %H:%M:%S";
+      };
+
+      banner = {
+        color = "red";
+        command = "${pkgs.hostname}/bin/hostname | ${pkgs.figlet}/bin/figlet -f slant";
+        # if you don't want a dependency on figlet, you can generate your
+        # banner however you want, put it in a file, and then use something like:
+        # command = "cat banner.txt"
+      };
+
+      # [weather]
+      # url = "https://wttr.in/New+York,New+York?0"
+      # proxy = "http://proxy:8080"
+
+      # [service_status]
+      # Accounts = "accounts-daemon"
+      # Cron = "cron"
+
+      # [docker_status]
+      # Local containers MUST start with a slash
+      # https://github.com/moby/moby/issues/6705
+      #"/nextcloud-nextcloud-1" = "Nextcloud"
+      #"/nextcloud-nextcloud-mariadb-1" = "Nextcloud Database"
+
+      uptime = {
+        prefix = "Uptime:";
+      };
+
+      # [user_service_status]
+      # gpg-agent = "gpg-agent"
+
+      #s_s_l_certs = {
+      # sort_method = "manual"
+      #
+      #    certs = {
+      #    CertName1 = "/path/to/cert1.pem"
+      #    CertName2 = "/path/to/cert2.pem"
+      # }
+      #};
+
+      filesystems = {
+        root = "/";
+      };
+
+      memory = {
+        swap_pos = "beside"; # or "below" or "none"
+      };
+
+      fail2_ban = {
+        jails = ["sshd"]; #, "anotherjail"]
+      };
+
+      last_login = {
+      };
+
+      last_run = {
+      };
+    };
+  };
+}