no longer needed
This commit is contained in:
@@ -1,124 +0,0 @@
|
||||
## Custom Add-ons for Sovran_SystemsOS and The Sovran Pro
|
||||
|
||||
Add-ons are extra features you can have enabled before your Sovran Pro is shipped to you or you can enable them yourself.
|
||||
|
||||
## The information about each Feature
|
||||
|
||||
1. Since Sovran_SystemsOS runs Bitcoin Knots by default as opposed to Bitcion Core, you can customize your Sovran Pro's Bitcoin node to run Bitcoin Core.
|
||||
|
||||
https://github.com/bitcoin/bitcoin
|
||||
|
||||
2. BIP-110 keeps Bitcoin more efficient as Peer to Peer Cash and you can run it along side your Bitocoin node.
|
||||
|
||||
https://github.com/bitcoin/bips/blob/master/bip-0110.mediawiki
|
||||
|
||||
3. The Bitcoin Mempool can be added and can be accessed via Tor or on your local network.
|
||||
|
||||
https://github.com/mempool/mempool
|
||||
|
||||
4. The Haven Relay for NOSTR (NOTES AND OTHER STUFF TRANSMITED BY RELAYS) is a Decenterized Social Media/File Sharing.
|
||||
|
||||
https://github.com/barrydeen/haven
|
||||
|
||||
5. You can run the new Element Voice and Video calling backend.
|
||||
|
||||
https://github.com/element-hq/element-call
|
||||
|
||||
6. You can run the Gnome Remote Desktop to view your desktop from another computer in the nextwork.
|
||||
|
||||
https://gitlab.gnome.org/GNOME/gnome-remote-desktop
|
||||
|
||||
|
||||
---
|
||||
|
||||
## The DIY for each Feature
|
||||
|
||||
All code belongs in the `custom.nix` file located at `/etc/nixos/custom.nix`.
|
||||
|
||||
If you would like to enable these features yourself after you have received your Sovran Pro, then open the *terminal* app and type or paste in
|
||||
|
||||
```bash
|
||||
ssh root@localhost
|
||||
```
|
||||
Type in the password in the diaolog box if necessary. It is the same password to run the Sovran_Systems_Updater app.
|
||||
|
||||
Then press enter.
|
||||
|
||||
Next, type or paste in
|
||||
```bash
|
||||
nano /etc/nixos/custom.nix
|
||||
```
|
||||
Then press enter.
|
||||
|
||||
Next type or paste the codes below *(Code for each Feature)* each on their own line into the termainl/nano window right above the last `}`
|
||||
|
||||
Once done, press `ctr s` then `ctr x` to save and exit.
|
||||
|
||||
Last, type or paste in
|
||||
```bash
|
||||
nixos-rebuild switch --impure
|
||||
```
|
||||
Then press enter.
|
||||
|
||||
After it is done bulding, reboot your Sovran Pro typeing or pasting in
|
||||
```bash
|
||||
reboot
|
||||
```
|
||||
|
||||
|
||||
---
|
||||
|
||||
## The code for each Feature (All Features are disabled by default)
|
||||
|
||||
1. The code to enable Bitcoin Core is as follows:
|
||||
|
||||
```nix
|
||||
sovran_systemsOS.features.bitcoin-core = lib.mkForce true;
|
||||
```
|
||||
|
||||
2. The code to enable BIP-110 is as follows:
|
||||
|
||||
```nix
|
||||
sovran_systemsOS.features.bip110 = lib.mkForce true;
|
||||
```
|
||||
|
||||
3. The code to enable Mempool is as follows:
|
||||
|
||||
```nix
|
||||
sovran_systemsOS.features.mempool = lib.mkForce true;
|
||||
```
|
||||
|
||||
4. The code to enable Haven Relay is as follows (also Haven will need a new domain to work):
|
||||
|
||||
```nix
|
||||
sovran_systemsOS.features.haven = lib.mkForce true;
|
||||
sovran_systemsOS.nostr_npub = "pasteyournpubhere";
|
||||
```
|
||||
|
||||
5. The code to enable Element Calling is as follows (also Element Calling will need a new domain to work):
|
||||
|
||||
```nix
|
||||
sovran_systemsOS.features.element-calling = lib.mkForce true;
|
||||
```
|
||||
|
||||
6. The code to enable Gnome Remote Desktop is as follows:
|
||||
|
||||
```nix
|
||||
sovran_systemsOS.features.rdp = lib.mkForce true;
|
||||
```
|
||||
Next, in a open the terminal app and in the new window paste this in:
|
||||
|
||||
```bash
|
||||
ssh root@localhost
|
||||
```
|
||||
Press enter
|
||||
|
||||
Type in the password if required. It will be the same password to run the Sovran_SystemsOS_Updater app.
|
||||
|
||||
Last, paste in this command to see the log in information to log in from any RDP client software (i.e. Remmina) from any computer on your home network
|
||||
```bash
|
||||
cat /var/lib/gnome-remote-desktop/rdp-credentials
|
||||
```
|
||||
|
||||
|
||||
|
||||
@@ -1,68 +0,0 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
# The cron job scans /var/lib/njalla/hooks.d/ for DDNS URLs
|
||||
systemd.services.njalla-ddns = {
|
||||
description = "Njalla Dynamic DNS Updater";
|
||||
after = [ "network-online.target" ];
|
||||
wants = [ "network-online.target" ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
};
|
||||
script = ''
|
||||
set -euo pipefail
|
||||
|
||||
IP=$(${pkgs.dig}/bin/dig @resolver4.opendns.com myip.opendns.com +short -4)
|
||||
|
||||
if [ -z "$IP" ]; then
|
||||
echo "Failed to resolve external IP"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Only update if IP changed
|
||||
LAST_IP_FILE="/var/lib/njalla/.last_ip"
|
||||
LAST_IP=""
|
||||
[ -f "$LAST_IP_FILE" ] && LAST_IP=$(cat "$LAST_IP_FILE")
|
||||
|
||||
if [ "$IP" = "$LAST_IP" ]; then
|
||||
echo "IP unchanged ($IP), skipping"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo -n "$IP" > "$LAST_IP_FILE"
|
||||
echo "IP changed to $IP, updating DNS records..."
|
||||
|
||||
# Update external_ip secret
|
||||
echo -n "$IP" > /var/lib/secrets/external_ip
|
||||
|
||||
# Process each DDNS hook
|
||||
HOOKS_DIR="/var/lib/njalla/hooks.d"
|
||||
mkdir -p "$HOOKS_DIR"
|
||||
|
||||
for hook in "$HOOKS_DIR"/*; do
|
||||
[ -f "$hook" ] || continue
|
||||
DDNS_URL=$(cat "$hook")
|
||||
SERVICE=$(basename "$hook")
|
||||
echo "Updating $SERVICE..."
|
||||
${pkgs.curl}/bin/curl -s "''${DDNS_URL}''${IP}" || echo "Failed: $SERVICE"
|
||||
done
|
||||
|
||||
echo "Done."
|
||||
'';
|
||||
};
|
||||
|
||||
# Run every 15 minutes
|
||||
systemd.timers.njalla-ddns = {
|
||||
wantedBy = [ "timers.target" ];
|
||||
timerConfig = {
|
||||
OnCalendar = "*:0/15";
|
||||
Persistent = true;
|
||||
};
|
||||
};
|
||||
|
||||
# Ensure directory exists
|
||||
systemd.tmpfiles.rules = [
|
||||
"d /var/lib/njalla 0700 root root -"
|
||||
"d /var/lib/njalla/hooks.d 0700 root root -"
|
||||
];
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
sovran-manage = pkgs.writeShellScriptBin "sovran-manage" (builtins.readFile ../../scripts/sovran-manage.sh);
|
||||
in
|
||||
{
|
||||
environment.systemPackages = [
|
||||
sovran-manage
|
||||
pkgs.pwgen
|
||||
pkgs.dig
|
||||
pkgs.curl
|
||||
];
|
||||
}
|
||||
@@ -1,46 +0,0 @@
|
||||
case "$service" in
|
||||
wordpress)
|
||||
echo -e " ${BOLD}WordPress has been fully configured.${NC}"
|
||||
echo ""
|
||||
echo " View your admin credentials:"
|
||||
echo -e " ${CYAN}sovran-manage show-creds wordpress${NC}"
|
||||
echo ""
|
||||
echo -e " Login at: ${CYAN}https://${domain}/wp-admin/${NC}"
|
||||
echo ""
|
||||
echo " Manage plugins:"
|
||||
echo -e " ${CYAN}sovran-manage wp plugin install woocommerce --activate${NC}"
|
||||
echo -e " ${CYAN}sovran-manage wp plugin list${NC}"
|
||||
echo -e " ${CYAN}sovran-manage wp theme install flavor flavor --activate${NC}"
|
||||
echo ""
|
||||
;;
|
||||
|
||||
nextcloud)
|
||||
echo -e " ${BOLD}Nextcloud has been fully configured.${NC}"
|
||||
echo ""
|
||||
echo " Pre-installed apps: Calendar, Contacts, Tasks, Notes, Deck"
|
||||
echo ""
|
||||
echo " View your admin credentials:"
|
||||
echo -e " ${CYAN}sovran-manage show-creds nextcloud${NC}"
|
||||
echo ""
|
||||
echo -e " Login at: ${CYAN}https://${domain}/${NC}"
|
||||
echo ""
|
||||
echo " Manage apps:"
|
||||
echo -e " ${CYAN}sovran-manage occ app:install cookbook${NC}"
|
||||
echo -e " ${CYAN}sovran-manage occ app:list${NC}"
|
||||
echo ""
|
||||
;;
|
||||
|
||||
matrix)
|
||||
echo -e " Matrix Synapse is running."
|
||||
echo -e " URL: ${CYAN}https://${domain}${NC}"
|
||||
echo ""
|
||||
echo " Create your first user:"
|
||||
echo -e " ${CYAN}sovran-manage matrix register-user${NC}"
|
||||
echo ""
|
||||
;;
|
||||
|
||||
*)
|
||||
echo -e " URL: ${CYAN}https://${domain}${NC}"
|
||||
echo ""
|
||||
;;
|
||||
esac
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 2.9 MiB |
Reference in New Issue
Block a user