summaryrefslogtreecommitdiff
path: root/nix/modules
diff options
context:
space:
mode:
authorPreston Pan <ret2pop@gmail.com>2025-03-05 04:18:06 -0800
committerPreston Pan <ret2pop@gmail.com>2025-03-05 04:18:06 -0800
commitba6373ebfbcafc99ce7a4fa100b2a26fc3bc2731 (patch)
tree31675c3c370dc77ce1afe93cfa26b72a2ec4f0b9 /nix/modules
parent0321f74a87df68584beb3c19a99969f9a794bb85 (diff)
add two new blog posts; bitcoin node; haskell devel
Diffstat (limited to 'nix/modules')
-rw-r--r--nix/modules/bitcoin.nix7
-rw-r--r--nix/modules/conduit.nix6
-rw-r--r--nix/modules/configuration.nix1
-rw-r--r--nix/modules/home/default.nix10
-rw-r--r--nix/modules/home/emacs.nix2
-rw-r--r--nix/modules/home/user.nix2
-rw-r--r--nix/modules/ollama.nix6
-rw-r--r--nix/modules/secrets.nix28
8 files changed, 49 insertions, 13 deletions
diff --git a/nix/modules/bitcoin.nix b/nix/modules/bitcoin.nix
new file mode 100644
index 0000000..bd014bb
--- /dev/null
+++ b/nix/modules/bitcoin.nix
@@ -0,0 +1,7 @@
+{ config, lib, ... }:
+{
+ services.bitcoind."${config.monorepo.vars.userName}" = {
+ enable = lib.mkDefault config.monorepo.profiles.workstation.enable;
+ prune = 10000;
+ };
+}
diff --git a/nix/modules/conduit.nix b/nix/modules/conduit.nix
index 623cb7f..ce2c23e 100644
--- a/nix/modules/conduit.nix
+++ b/nix/modules/conduit.nix
@@ -2,11 +2,15 @@
{
services.matrix-conduit = {
enable = lib.mkDefault config.monorepo.profiles.server.enable;
- # random comment
settings.global = {
server_name = "matrix.${config.monorepo.vars.remoteHost}";
+ trusted_servers = [
+ "matrix.org"
+ "nixos.org"
+ ];
address = "0.0.0.0";
port = 6167;
+ allow_registration = true;
};
};
}
diff --git a/nix/modules/configuration.nix b/nix/modules/configuration.nix
index bd37c77..e8e3fb0 100644
--- a/nix/modules/configuration.nix
+++ b/nix/modules/configuration.nix
@@ -16,6 +16,7 @@
./i2pd.nix
./gitweb.nix
./conduit.nix
+ ./bitcoin.nix
];
documentation = {
diff --git a/nix/modules/home/default.nix b/nix/modules/home/default.nix
index d2277da..4f1e7d4 100644
--- a/nix/modules/home/default.nix
+++ b/nix/modules/home/default.nix
@@ -37,6 +37,7 @@
lang-js.enable = lib.mkEnableOption "Enables javascript language support";
lang-nix.enable = lib.mkEnableOption "Enables nix language support";
lang-coq.enable = lib.mkEnableOption "Enables coq language support";
+ lang-haskell.enable = lib.mkEnableOption "Enables haskell language support";
crypto.enable = lib.mkEnableOption "Enables various cryptocurrency wallets";
art.enable = lib.mkEnableOption "Enables various art programs";
@@ -86,6 +87,7 @@
bun
yarn
typescript
+ typescript-language-server
vscode-langservers-extracted
]) else [])
++
@@ -114,6 +116,12 @@
bash-language-server
]) else [])
++
+ (if config.monorepo.profiles.lang-haskell.enable then (with pkgs; [
+ haskell-language-server
+ haskellPackages.hlint
+ ghc
+ ]) else [])
+ ++
(if config.monorepo.profiles.lang-coq.enable then (with pkgs; [
coq
]) else [])
@@ -156,6 +164,7 @@
inkscape
kdenlive
kicad
+ reaper
]) else []);
monorepo.profiles = {
@@ -175,6 +184,7 @@
lang-js.enable = lib.mkDefault (true && config.monorepo.profiles.enable);
lang-nix.enable = lib.mkDefault (true && config.monorepo.profiles.enable);
lang-coq.enable = lib.mkDefault (true && config.monorepo.profiles.enable);
+ lang-haskell.enable = lib.mkDefault (true && config.monorepo.profiles.enable);
crypto.enable = lib.mkDefault (true && config.monorepo.profiles.enable);
art.enable = lib.mkDefault (true && config.monorepo.profiles.enable);
diff --git a/nix/modules/home/emacs.nix b/nix/modules/home/emacs.nix
index 5f39e87..4358ca3 100644
--- a/nix/modules/home/emacs.nix
+++ b/nix/modules/home/emacs.nix
@@ -37,6 +37,7 @@
epkgs.general
epkgs.gptel
epkgs.gruvbox-theme
+ epkgs.haskell-mode
epkgs.htmlize
epkgs.irony-eldoc
epkgs.ivy
@@ -45,6 +46,7 @@
epkgs.latex-preview-pane
epkgs.lsp-ivy
epkgs.lsp-mode
+ epkgs.lsp-haskell
epkgs.lyrics-fetcher
epkgs.magit
epkgs.magit-delta
diff --git a/nix/modules/home/user.nix b/nix/modules/home/user.nix
index 7872d53..d0ce5cd 100644
--- a/nix/modules/home/user.nix
+++ b/nix/modules/home/user.nix
@@ -43,7 +43,7 @@
pavucontrol alsa-utils imagemagick ffmpeg helvum
# Net
- curl rsync git
+ curl rsync git iamb
# Tor
torsocks tor-browser
diff --git a/nix/modules/ollama.nix b/nix/modules/ollama.nix
index 96ee918..3ac1a52 100644
--- a/nix/modules/ollama.nix
+++ b/nix/modules/ollama.nix
@@ -4,5 +4,11 @@
enable = lib.mkDefault config.monorepo.profiles.workstation.enable;
acceleration = "cuda";
host = "0.0.0.0";
+ openFirewall = true;
+ };
+
+ services.nextjs-ollama-llm-ui = {
+ enable = lib.mkDefault config.services.ollama.enable;
+ port = 3000;
};
}
diff --git a/nix/modules/secrets.nix b/nix/modules/secrets.nix
index d7a229f..2f8defc 100644
--- a/nix/modules/secrets.nix
+++ b/nix/modules/secrets.nix
@@ -5,17 +5,23 @@
age = {
keyFile = "/home/${config.monorepo.vars.userName}/.ssh/keys.txt";
};
- secrets.mail = {
- format = "yaml";
- path = "${config.sops.defaultSymlinkPath}/mail";
- };
- secrets.cloudflare-dns = {
- format = "yaml";
- path = "${config.sops.defaultSymlinkPath}/cloudflare-dns";
- };
- secrets.digikey = {
- format = "yaml";
- path = "${config.sops.defaultSymlinkPath}/digikey";
+ secrets = {
+ mail = {
+ format = "yaml";
+ path = "${config.sops.defaultSymlinkPath}/mail";
+ };
+ cloudflare-dns = {
+ format = "yaml";
+ path = "${config.sops.defaultSymlinkPath}/cloudflare-dns";
+ };
+ digikey = {
+ format = "yaml";
+ path = "${config.sops.defaultSymlinkPath}/digikey";
+ };
+ dn42 = {
+ format = "yaml";
+ path = "${config.sops.defaultSymlinkPath}/dn42";
+ };
};
defaultSymlinkPath = "/run/user/1000/secrets";