Compare commits
No commits in common. "3d02be1be0d314617ab2c73700a05f9084b36736" and "745f7786e8ca1d3eddf4fcbef82054e79c97ed12" have entirely different histories.
3d02be1be0
...
745f7786e8
@ -8,13 +8,11 @@ order they will be implemented.
|
||||
These items are listed more or less in the order they need to be completed, as
|
||||
they generally depend on the items previous to them.
|
||||
|
||||
### Window Support + GUI
|
||||
### Cross Compilation
|
||||
|
||||
Support for Windows is a must. This requirement also includes a simple GUI,
|
||||
which would essentially act as a thin layer on top of `daemon.yml` to start
|
||||
with.
|
||||
|
||||
Depending on difficulty level, OSX support might be added at this stage as well.
|
||||
Currently the only supported OS/CPU is Linux/amd64. This can be expanded
|
||||
_theoretically_ quite easily, using nix's cross compilation tools. First target
|
||||
should be OSX/arm64, but windows would also be quite the get.
|
||||
|
||||
### NATS
|
||||
|
||||
@ -37,6 +35,14 @@ requiring a passphrase.
|
||||
Most likely this integration will require NATS as well, to coordinate cache
|
||||
invalidation and cert refreshing.
|
||||
|
||||
### Web server + interface
|
||||
|
||||
Have every `isle daemon` run a webserver as one of its sub-processes. Status and
|
||||
connectivity information for the local host could be provided via a simple web
|
||||
interface, which the user can open in their browser. This saves us the effort of
|
||||
needing to develop UIs for individual OSs. This could also make remotely
|
||||
debugging hosts easier for admins.
|
||||
|
||||
### Invitation code bootstrapping
|
||||
|
||||
Once an HTTP gateway/load-balancer is set up it should be possible to do host
|
||||
@ -93,14 +99,15 @@ It should theoretically be possible for the internal network IP range to be on
|
||||
IPv6 rather than IPv4. This may be a simple matter of just testing it to confirm
|
||||
it works.
|
||||
|
||||
### Proper Linux Packages
|
||||
### DNS resolver settings
|
||||
|
||||
Rather than distributing raw binaries for Linux we should instead be
|
||||
distributing actual packages, e.g. deb files for debian/ubuntu, PKGBUILD for
|
||||
arch, rpm for fedora (if we care), etc... This will allow for properly setting
|
||||
capabilities for the binary at install time, so that it can be run as non-root,
|
||||
and installing any necessary `.desktop` files so that it can be run as a GUI
|
||||
application.
|
||||
The daemon should update the resolver settings of the host, so that it
|
||||
automatically serves DNS queries, unless set to not do so in `daemon.yml`.
|
||||
|
||||
### Install sub-command
|
||||
|
||||
It would be great to have a `isle install` sub-command which would
|
||||
auto-detect the installed operating system and install the daemon automatically.
|
||||
|
||||
### Mobile app
|
||||
|
||||
@ -123,12 +130,6 @@ necessary ambient capabilities up-front, and then drop down to a specified user.
|
||||
This is how the tests work. Doing this with other OS's will depend on how they
|
||||
work.
|
||||
|
||||
### DNS/Firewall Configuration
|
||||
|
||||
Ideally Isle could detect the DNS/firewall subsystems being used on a per-OS
|
||||
basis and configure them as needed. This would be simplify necessary
|
||||
documentation and setup steps for operators.
|
||||
|
||||
### Plugins
|
||||
|
||||
It would not be difficult to spec out a plugin system using nix commands.
|
||||
|
@ -1,10 +1,3 @@
|
||||
Ctrl+A X -> exits
|
||||
|
||||
qemu-system-aarch64 -nographic -cdrom tests/alpine-virt-3.18.4-aarch64.iso
|
||||
|
||||
Ctrl+Alt+G -> Escape mouse capture
|
||||
qemu-system-x86_64 \
|
||||
-cdrom tests/virt/Win11_23H2_English_x64.iso \
|
||||
-m 8G \
|
||||
-boot order=d \
|
||||
-drive file=./tests/virt/winblows.qcow2
|
||||
qemu-system-aarch64 -M virt -nographic -cdrom tests/alpine-virt-3.17.3-aarch64.iso
|
||||
|
Loading…
Reference in New Issue
Block a user