No description
Find a file
Leon van Kammen 37fa95666f
Some checks failed
/ mirror_to_github (push) Failing after 1m34s
/ test (push) Successful in 12s
wip
2025-01-21 15:05:16 +01:00
.forgejo/workflows mirror_to_github action++++++ 2024-04-30 14:55:48 +02:00
.github/workflows GH action 2024-05-30 14:50:23 +00:00
nix cleanup 2025-01-20 15:32:50 +01:00
src cleanup 2025-01-20 15:32:50 +01:00
.args build fix: now opens browser correctly 2024-09-24 11:07:14 +00:00
.env .env: run nix-shell only once 2025-01-16 17:03:24 +01:00
.env.leave update .env 2024-12-18 19:20:24 +01:00
.gitignore updated .gitignore 2024-12-16 17:27:02 +00:00
.gitmodules typofix .gitmodules 2025-01-20 15:01:32 +01:00
cosmopolitan.nix made make-script compatible with nix 2024-10-28 11:12:18 +00:00
index.html updated to fbterm + added manual to website index.html 2025-01-15 18:03:12 +01:00
LICENSE Initial commit 2023-11-01 11:14:44 +01:00
make updated xrsh.com + buildscript 2025-01-16 17:09:55 +01:00
package.overlayfs.zip updated overlayfs zip 2024-12-13 13:32:31 +00:00
package.zip updated docs + added package.overlayfs.zip 2024-12-12 11:28:15 +00:00
README.md wip 2025-01-21 15:05:16 +01:00
shell.nix new build 2025-01-09 12:06:51 +01:00
xrsh.com new coms + build 2025-01-17 18:01:26 +01:00
xrsh.com.txt new coms + build 2025-01-17 18:01:26 +01:00
xrsh.ico added favico + svg logo + added logo to tiddlywiki 2024-11-21 20:05:53 +01:00
xrsh.iso added xrsh-buildroot submodule 2024-10-30 15:46:08 +00:00
xrsh.svg added nlnet + ngi logo 2024-11-21 20:22:44 +01:00
xrsh.txt made make-script compatible with nix 2024-10-28 11:12:18 +00:00

xrsh

click here for the website / hosted repo

XRSH Manual

Documentation for XRSH users can be found here

TIP: this is also available by typing ctrl/cmd+a+0 or man xrsh inside XRSH

Wiki / Roadmap

See the wiki here

Install

NOTE: installation is optional: just surf to the public version here

run standalone binary
  1. Download xrsh.com
  2. optional: run unzip xrsh.com to verify repository contents
  3. run chmod +x xrsh.com in your console (only linux/mac)
  4. run ./xrsh.com in (any) shell
  5. Profit! ✔
install using nixos

NIX is a convenient way to install or develop xrsh:

  1. nix-shell -p xrsh thttpd
  2. thttpd -p 8080 -d /nix/store/5q4vd50gmh52jh48z62ln1j05xzfh1fz-xrsh-0.142
  3. point your browser to localhost:8080
  4. profit!
run OCI container [podman/docker]
  1. $(which podman || which docker) run -p 8080:8080 docker.io/coderofsalvation/xrsh
  2. point your browser to localhost:8080
  3. profit!

NOTE 1: to add files use the -D <dir> overlay webroot parameter.

NOTE 2: to enable SSL and add (iso)file try something like this:

$ mkdir data
$ cp ../xrsh.iso data/. # copy custom iso
$ $(which podman || which docker) run -p 8080:8080 -v data/cert:etc/cert -v data:/data docker.io/coderofsalvation/xrsh /xrsh.com -D /data -c 0 -C /etc/cert/cert.pem -K /etc/cert/key.pem

or as an exercise in constructive laziness setup a reverse proxy like zoraxy, go-proxy, [droxy], caddy or nginx-reverse-proxymanager.

run from codeberg.org (nonprofit-backed forgejo instance)
1. create a `pages` branchclone 2. push it to the codeberg repository 3. profit! it is now live

more info: https://docs.codeberg.org/codeberg-pages/

run from selfhosted [forgejo](https://forgejo.org)/gitea codeforge-instance
1. clone the xrsh repository locally 2. create a repo on your forgejo instance 3. `git push` the xrsh to it 4. in your forgejo (docker/nix)-instance symlink it to the public folder (*) 5. point your browser to `https://yourforgejo.org/assets/xrsh`

* = for example: ln -f git/repositories/yourusername/xrsh gitea/public/assets/.

optionally customize the xrsh yunohost package with your own ISO

install in [yunohost](https://yunohost.org)
1. search for xrsh in the application catalog 2. click install 3. profit!

optionally customize the xrsh yunohost package with your own ISO

The browser auto-launches https://localhost:8080 on most platforms

pass -p XXXX to specify port (default:8080)

Developers

Make sure to clone the repo including submodules (the xrsh-com repo)

$ git clone --recurse-submodules https://forgejo.isvery.ninja/xrsh/xrsh
$ cd xrsh
$ nix-shell  # optional but adviced (to get up and running instantly)

Now serve the repo from a HTTPS webserver (for example run ./make dev)

build using shellscript
  1. Run ./make standalone to package everything into xrsh.com
build using nix
  1. nix-build -E "with import <nixpkgs> { }; callPackage ./nix/xrsh-package.nix"
  2. optionally see the other nix-files in nix-folder
launch different .iso / modify files

You can specify a different .iso file in various ways:

  1. open the xrsh.com as a zip (drag-drop into a zip-manager, or add .zip extension)
  2. method 1: overwrite xrsh.iso
  3. method 2: open src/index.html and change isoterminal="iso: ./../xrsh.iso" to another file/URL

see developer-section below on building your own iso

Funding

This project is funded through NGI0 Entrust, a fund established by NLnet with financial support from the European Commission's Next Generation Internet program. Learn more at the NLnet project page.

NLnet foundation logo NGI Zero Logo

Inspired by