User-facing desktop application for server.garden
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
forest fe07150a42 create empty directories so raspberry pi os will be happy 2 年之前
electron-packager-stuff/icon copy and paste boilerplate from LibreBookKeeper 4 年之前
image-overlay create empty directories so raspberry pi os will be happy 2 年之前
readme about.png 4 年之前
sudo-exec renaming folders to be consistent 4 年之前
vendor first shot at real time infrastructure provisioning display 4 年之前
webcontent more word list update to match pwm 3 年之前
.gitignore write SD card --> boot --> login via SSH is working! 4 年之前
LICENSE.md add back button to encryption passphrase controller, adjust wording 4 年之前
README.md add blog link to readme 3 年之前
encryption.js adding build numbers to terrafrom builds 4 年之前
main.js bug fixes during demo 4 年之前
objectStorage.js fixes and tweaks 4 年之前
package-lock.json implementing builtin ssh key and removing golang dependency for 4 年之前
package.json implementing builtin ssh key and removing golang dependency for 4 年之前
preload.js implement launch instructions page 4 年之前
renderTemplate.js write SD card --> boot --> login via SSH is working! 4 年之前
settings.js fixing seedpacket init scripts bugs 3 年之前
strings.js bug fixes during demo 4 年之前
utils.js working on customizing image before writing. 4 年之前
writeImageToBlockDevice.js tweaks 4 年之前

README.md

s e e d p a c k e t

This project is on hold for the time being.. For more information see: https://sequentialread.com/the-pragmatic-path-4-year-update-introducing-greenhouse/

Seedpacket is the user-facing cross-platform desktop application for server.garden.

npm install

because of https://www.electronjs.org/docs/tutorial/using-native-node-modules

then you also have to run

./node_modules/.bin/electron-rebuild

finally you can run the app with

npm start

Right now only the Backblaze object storage & Armbian image on the Odroid XU4 is working

The seed file format is currently changing every day so expect to have to re-create your seed or face bugs

screenshot

about electron

Seedpacket is initially being written as an Electron-based app for a couple reasons:

  • The Balena Etcher open source project is also built with electron. While it may be overbloated and truely corporate owned software, it is also one of the most reliable and easy-to-build cross platform disk-image flashing tools in existence. Seedpacket also has to be able to flash disk images. This allows us to re-use parts from Balena Etcher without too much work.

  • Writing the user interface in HTML/JavaScript allows the UI Components to be more easily moved to other applications and paradigms like web services and mobile applications.

how to deal with NODE_MODULE_VERSION error (native modules node.js version different from electrons node.js version)

# Every time you run "npm install", run this:
./node_modules/.bin/electron-rebuild

WIP pre-loaded armbian image build

https://github.com/armbian/build/

userpatches/lib.config

PACKAGE_LIST_ADDITIONAL="$PACKAGE_LIST_ADDITIONAL curl netcat dnsutils rsync jq unzip software-properties-common apt-transport-https ca-certificates gnupg-agent libc6-dev-armhf-cross build-essential libssl-dev libffi-dev python3-dev python3 python3-venv python3-wheel python3-setuptools python3-pip graphviz"

userpatches/customize-image.sh

#!/bin/sh

curl -fsSL "https://download.docker.com/linux/debian/gpg" | apt-key add -
apt-key fingerprint 0EBFCD88
add-apt-repository "deb [arch=armhf] https://download.docker.com/linux/debian buster stable"
apt-get update
apt-get install -y docker-ce docker-ce-cli containerd.io

pip3 install wheel
pip3 install ansible
pip3 install docker-compose

./compile.sh BOARD="odroidxu4" BRANCH="current" RELEASE="buster" KERNEL_ONLY="no" KERNEL_CONFIGURE="no" BUILD_DESKTOP="no" BUILD_MINIMAL="yes"

Please note that this build will take seemingly forever but should eventually finish.

Attribution

Icons made by

from flaticon.com