Author:
Hash:
Timestamp:
+0 -96 +/-1 browse
Kevin Schoon [me@kevinschoon.com]
db2950451df65e343309316a3fb87b3d12865d32
Fri, 28 Nov 2025 20:48:09 +0000 (1 day ago)
| 1 | diff --git a/content/blog/announcing-ayllu-0.5/README.md b/content/blog/announcing-ayllu-0.5/README.md |
| 2 | deleted file mode 100644 |
| 3 | index 7192b45..0000000 |
| 4 | --- a/content/blog/announcing-ayllu-0.5/README.md |
| 5 | +++ /dev/null |
| 6 | @@ -1,96 +0,0 @@ |
| 7 | - # Ayllu 0.5 Has Been Released! |
| 8 | - |
| 9 | - `11/21/2025` |
| 10 | - |
| 11 | - <br /> |
| 12 | - |
| 13 | - Hello again and welcome to another sporadic set of release notes for |
| 14 | - Ayllu. This began as a fun experiment for me to hack together a |
| 15 | - development environment which was setup the way I wanted it and also |
| 16 | - as an excuse to learn Rust. It continues to be a fun side project and |
| 17 | - staging ground for basically programming things I find interesting. |
| 18 | - There are no shortages of code forges |
| 19 | - |
| 20 | - |
| 21 | - ## Identities in Ayllu |
| 22 | - |
| 23 | - Most of the popular forges work like traditional web apps: you sign-up |
| 24 | - with an e-mail address and then take on the persona of a developer with |
| 25 | - ability to push and pull in a tightly controlled environment. The ability |
| 26 | - to push code via SSH is usually available via a highly restricted shell |
| 27 | - environment where you can authenticate via public keys and then typically |
| 28 | - run only the commands needed to push or pull from a repository. Ayllu |
| 29 | - instead provides a management TUI interface over SSH as well as support |
| 30 | - for delegation to normal system users. |
| 31 | - |
| 32 | - |
| 33 | - ```toml |
| 34 | - [[identities]] |
| 35 | - username = "hello" |
| 36 | - email = "world@example.org" |
| 37 | - avatar = {} |
| 38 | - tagline = "...." |
| 39 | - authorized_keys = [...] |
| 40 | - gpg_keys = [...] |
| 41 | - [[identities.profiles]] |
| 42 | - url = "" |
| 43 | - ``` |
| 44 | - |
| 45 | - <video controls> <source src="/ayllu-0.5-demo.mp4" type="video/mp4" /> </video> |
| 46 | - |
| 47 | - #### New Binaries |
| 48 | - |
| 49 | - ##### ayllu-keys |
| 50 | - |
| 51 | - The `ayllu-keys` command is a shim for authorizing user access via OpenSSH's |
| 52 | - `AuthorizedKeysCommand`. |
| 53 | - |
| 54 | - ##### ayllu-shell |
| 55 | - |
| 56 | - The `ayllu-shell` command implements a restricted shell environment for |
| 57 | - management of Ayllu related tasks. It's also responsble for delegating |
| 58 | - calls to `git-receive-pack` and `git-upload-pack`. |
| 59 | - |
| 60 | - Here is a quick video of what logging into an account with Ayllu looks |
| 61 | - like today. |
| 62 | - |
| 63 | - |
| 64 | - ## ForgeFeed Specification |
| 65 | - |
| 66 | - I've struggled with what a programmatic API should look like for Ayllu because |
| 67 | - after having written 10,000,000 REST/Protobuf/... web APIs they're really all |
| 68 | - miserable reinventions of the same thing. What I really want is a generalized |
| 69 | - interface for querying forge resources across ANY forge, not just Ayllu. The |
| 70 | - [ForgeFeed](https://forge-feed.org) specification attempts to define a |
| 71 | - common interface. |
| 72 | - |
| 73 | - ## A Primitive Build System |
| 74 | - |
| 75 | - A primitive but functional build system has been added (actually re-enabled) |
| 76 | - to Ayllu and integrated into it's UI. The `ayllu-build` binary when invoked |
| 77 | - will now run an un-sandboxed build of the HEAD at whichever branch is |
| 78 | - selected. This can be invoked manually |
| 79 | - |
| 80 | - ## Towards 1.0 |
| 81 | - |
| 82 | - There is no timeline for when Ayllu will reach 1.0 or exactly what |
| 83 | - it needs to encompass but roughly here are a few items. |
| 84 | - |
| 85 | - * Tooling for Package Managers |
| 86 | - * Functional build system with single host isolation |
| 87 | - * Multiuser Environments |
| 88 | - * A way to accept changes |
| 89 | - * An internal issue tracking system |
| 90 | - |
| 91 | - # User Identities in Ayllu |
| 92 | - |
| 93 | - Code forges typically follow a traditional "web app" model of user accounts |
| 94 | - by allowing people to sign up with their e-mail addresses and log into a web |
| 95 | - interface. |
| 96 | - |
| 97 | - Ayllu uses PAM managed system accounts which are optionally granted a shell |
| 98 | - in the spirit of Unix Timesharing systems. |
| 99 | - |
| 100 | - ## Managing User Accounts in Ayllu |
| 101 | - |
| 102 | - ## Security Implications |