This commit is contained in:
Bryan Ramos 2025-01-11 23:15:34 -05:00
parent fc37abef96
commit b765ca1558
Signed by: bryan
GPG key ID: 6ABDCD144D6643C8
4 changed files with 90 additions and 53 deletions

113
justfile
View file

@ -36,13 +36,15 @@ out TYPE SYSTEM="desktop":
nix build --dry-run .#nixosConfigurations."{{SYSTEM}}".config.system.build.toplevel -L
exit 0
else
echo "Error: Unknown argument - '{{SYSTEM}}'"
echo "Use one of:"
echo " desktop"
echo " server"
echo " laptop"
echo " wsl"
echo " vm"
cat <<EOF
Error: Unknown argument - '{{SYSTEM}}'
Use one of:
desktop
server
laptop
vm
wsl
EOF
exit 1
fi
;;
@ -52,10 +54,12 @@ out TYPE SYSTEM="desktop":
exit 0
;;
*)
echo "Invalid usage: {{TYPE}}.";
echo "Use one of:"
echo " nix"
echo " home"
cat<<EOF
Error: Invalid usage: {{TYPE}}
Use one of:
nix
home
EOF
exit 1
;;
esac
@ -77,13 +81,15 @@ test TYPE SYSTEM="desktop":
sudo nixos-rebuild test --flake .#{{SYSTEM}}
exit 0
else
echo "Error: Unknown argument - '{{SYSTEM}}'"
echo "Use one of:"
echo " desktop"
echo " server"
echo " laptop"
echo " wsl"
echo " vm"
cat <<EOF
Error: Unknown argument - '{{SYSTEM}}'
Use one of:
desktop
server
laptop
vm
wsl
EOF
exit 1
fi
;;
@ -93,16 +99,18 @@ test TYPE SYSTEM="desktop":
exit 0
;;
*)
echo "Invalid usage: {{TYPE}}.";
echo "Use one of:"
echo " nix"
echo " home"
cat<<EOF
Error: Invalid usage: {{TYPE}}
Use one of:
nix
home
EOF
exit 1
;;
esac
# Build the nix expression and hydrate the results directory
make TYPE SYSTEM="desktop":
build TYPE SYSTEM="desktop":
#!/usr/bin/env bash
set -euo pipefail
case "{{TYPE}}" in
@ -114,17 +122,20 @@ make TYPE SYSTEM="desktop":
[ "{{SYSTEM}}" = "vm" ] || \
[ "{{SYSTEM}}" = "laptop" ]
then
echo "Hydrating resulting NixOS configuration for {{SYSTEM}}..."
echo "Building resulting NixOS configuration for {{SYSTEM}}..."
nix build .#nixosConfigurations."{{SYSTEM}}".config.system.build.toplevel -L
echo "result directory hydrated"
exit 0
else
echo "Error: Unknown argument - '{{SYSTEM}}'"
echo "Use one of:"
echo " desktop"
echo " server"
echo " laptop"
echo " wsl"
echo " vm"
cat <<EOF
Error: Unknown argument - '{{SYSTEM}}'
Use one of:
desktop
server
laptop
vm
wsl
EOF
exit 1
fi
;;
@ -134,10 +145,12 @@ make TYPE SYSTEM="desktop":
exit 0
;;
*)
echo "Invalid usage: {{TYPE}}."
echo "Use one of:"
echo " nix"
echo " home"
cat<<EOF
Error: Invalid usage: {{TYPE}}
Use one of:
nix
home
EOF
exit 1
;;
esac
@ -155,16 +168,24 @@ vm SYSTEM:
then
echo "Building VM for {{SYSTEM}}..."
nixos-rebuild build-vm --flake .#{{SYSTEM}}
if [[ -f result/bin/run-{{SYSTEM}}-vm ]]; then
result/bin/run-{{SYSTEM}}-vm
else
echo "Error: VM Build failed!"
exit 1
fi
exit 0
else
echo "Error: Unknown argument - '{{SYSTEM}}'"
echo "Use one of:"
echo " desktop"
echo " server"
echo " laptop"
echo " vm"
echo " wsl"
cat <<EOF
Error: Unknown argument - '{{SYSTEM}}'
Use one of:
desktop
server
laptop
vm
wsl
EOF
exit 1
fi
@ -212,12 +233,12 @@ hash URL:
#!/usr/bin/env bash
set -euo pipefail
if echo "{{URL}}" | grep -E '\.(tar\.gz|tgz|zip)$'; then
CONTENTS=$(nix-prefetch-url --unpack {{URL}} | tail -n 1)
if [[ "{{URL}}" =~ \.(tar(\.gz)?|tgz|gz|zip)$ ]]; then
CONTENTS=$(nix-prefetch-url --unpack {{URL}})
else
CONTENTS=$(nix-prefetch-url {{URL}} | tail -n 1)
CONTENTS=$(nix-prefetch-url {{URL}})
fi
HASH=$(nix hash to-sri --type sha256 "$CONTENTS")
HASH=$(nix hash convert --hash-algo sha256 "$CONTENTS")
echo -e "\033[32m$HASH\033[0m"

View file

@ -15,16 +15,24 @@ let
in
{ options.modules.system.bitcoin.electrum = { enable = mkEnableOption "Electrs Server"; };
config = mkIf (cfg.enable && btc.enable) {
#TODO: Fix the failing overlay due to `cargoHash/cargoSha256`
#nixpkgs.overlays = [
# (final: prev: {
# electrs = prev.electrs.overrideAttrs (old: rec {
# version = "0.10.4";
# pname = "electrs";
# version = "0.10.8";
# src = pkgs.fetchFromGitHub {
# owner = "romanz";
# rev = "${version}";
# hash = "sha256-4c+FGYM34LSfazzshfRPjA+0BvDL2tvkSr2rasUognc=";
# repo = pname;
# rev = "v${version}";
# hash = "sha256-L26jzAn8vwnw9kFd6ciyYS/OLEFTbN8doNKy3P8qKRE=";
# };
# #cargoDeps = old.cargoDeps.overrideAttrs (const {
# # name = "electrs-${version}.tar.gz";
# # inherit src;
# # sha256 = "";
# #});
# cargoHash = "sha256-lBRcq73ri0HR3duo6Z8PdSjnC8okqmG5yWeHxH/LmcU=";
# });
# })
#];

View file

@ -76,8 +76,11 @@ in
};
};
};
#"btc.ramos.codes" = mkIf module.bitcoin.enable {
#"btc.ramos.codes" = mkIf module.bitcoin.electrum.enable {
# locations = {
# "/" = {
# proxyPass = "";
# };
# };
#};
};

View file

@ -48,6 +48,11 @@ return {
end,
},
{
"folke/todo-comments.nvim",
dependencies = { "nvim-lua/plenary.nvim" },
},
{
"fei6409/log-highlight.nvim"
}