shrub/pkg/arvo
Tinnus Napbus 27349c51ab eyre: add auto-https redirects
if a cert is configured and a secure port is live it will set the
redirect flag in http-config.state.

When it gets a ++request it will return a 301 redirect to
https://[host]/[path] if:

  1. not already secure
  2. redirect flag set
  3. secure port live
  4. is not requesting /.well-known/acme-challenge/...
  5. the host is in domains.state

It will not happen if forwarded-secured, localhost, local loopback, ip
addresses or domains not in domains.state.

in ++load it checks the secure port is live and a cert is set and
enables it if so (for people who already use in-urbit letencrypt)

%rule %cert tasks also toggle it (only turning it on if secure port
live)

%live tasks also toggle it (only turning it on if cert set)

Have tested with a couple of ships and seems to work fine.

This is useful in combination with pyry's auto arvo.network dns config
system - can finally get rid of reverse proxies entirely.
2022-09-04 02:58:09 +12:00
..
app Merge branch 'next/landscape' 2022-01-27 10:24:04 -06:00
gen roller: fix refuel generator 2021-12-10 13:13:14 +01:00
lib Merge branch 'next/arvo' 2022-02-17 20:32:26 +01:00
mar Merge pull request #5532 from urbit/azimuth/jael-fix 2022-01-12 12:47:21 +01:00
sur Merge pull request #5532 from urbit/azimuth/jael-fix 2022-01-12 12:47:21 +01:00
sys eyre: add auto-https redirects 2022-09-04 02:58:09 +12:00
ted eth-watcher: fix zoom-margin to account for reorgs 2022-01-19 17:41:05 +01:00
tests bounds-check against sk=1 2022-02-03 13:21:21 -06:00
.gitattributes gitattributes: export-ignore additions [ci skip] 2020-02-01 17:40:27 +04:00
.ignore Write top-level pier code; hook up Ames and Behn. 2019-07-31 19:34:14 -07:00
desk.bill Merge branch 'master' into naive/roller 2021-10-26 20:46:32 +02:00
LICENSE.txt Pull in latest v0.8.0.rc changes 2019-07-16 15:59:39 -07:00
README.md readme: update arvo maintainers list 2021-03-25 23:52:20 +01:00
sys.kelvin zuse: decrement kelvin to 419 2021-11-09 21:40:12 -08:00
TESTING.udon Pull in latest v0.8.0.rc changes 2019-07-16 15:59:39 -07:00

Arvo

A clean-slate operating system.

Usage

To run Arvo, you'll need Urbit. To install Urbit and run Arvo please follow the instructions in the getting started docs. You'll be on the live network in a few minutes.

If you're doing development on Arvo, keep reading.

Documentation

Find Arvo's documentation on urbit.org.

Development

To boot a fake ship from your development files, run urbit with the following arguments:

urbit -F zod -A /path/to/arvo -c fakezod

Mount Arvo's filesystem allows you to update its contents through Unix. To do so, run |mount in dojo. It is most common to |mount /=home=.

To create a custom pill (bootstrapping object) from the files loaded into the home desk, run .my/pill +solid. Your pill will appear in /path/to/fakezod/.urb/put/my.pill.

To boot a fake ship with a custom pill, use the -B flag:

urbit -F zod -A /path/to/arvo -B /path/to.pill -c fakezod

To run all tests in /tests, run -test %/tests in dojo. To run only the tests in /tests/some/path, use -test %/tests/some/path.

Maintainers

Most parts of Arvo have dedicated maintainers.

  • /sys/hoon: @pilfer-pandex (~pilfer-pandex)
  • /sys/zuse: @pilfer-pandex (~pilfer-pandex)
  • /sys/arvo: @joemfb (~master-morzod)
  • /sys/vane/ames: @belisarius222 (~rovnys-ricfer) & @philipcmonk (~wicdev-wisryt)
  • /sys/vane/behn: @belisarius222 (~rovnys-ricfer)
  • /sys/vane/clay: @philipcmonk (~wicdev-wisryt) & @belisarius222 (~rovnys-ricfer)
  • /sys/vane/dill: @fang- (~palfun-foslup)
  • /sys/vane/eyre: @fang- (~palfun-foslup)
  • /sys/vane/gall: @philipcmonk (~wicdev-wisryt)
  • /sys/vane/jael: @fang- (~palfun-foslup) & @philipcmonk (~wicdev-wisryt)
  • /app/acme: @joemfb (~master-morzod)
  • /app/dns: @joemfb (~master-morzod)
  • /app/aqua: @philipcmonk (~wicdev-wisryt)
  • /app/hood: @belisarius222 (~rovnys-ricfer)
  • /lib/hood/drum: @fang- (~palfun-foslup)
  • /lib/hood/kiln: @philipcmonk (~wicdev-wisryt)

Contributing

Contributions of any form are more than welcome! Please take a look at our contributing guidelines for details on our git practices, coding styles, how we manage issues, and so on.

You might also be interested in: