irssi showing off how it works in a local e2e setup: Media Media Media Media Media Media
@jecxjo@sh0.xyz Yes please! See: https://git.mills.io/prologic/parley
Made a little program to print the systemās uptime on DOS, OS/2, and Windows NT:
https://movq.de/git/retrouptime/
(Release pending.)
This was pretty easy to do on Windows, a bit harder on OS/2 (because documentation is scarce), and quite the mess on DOS. DOS doesnāt explicitly keep track of the systemās uptime, so you have to resort to tricks like āgive me the mtime of stdinā, which probably works ⦠Yeah.



Hey, folks. Sorry to disappear for the last couple of weeks.
Last weekend, I took the family to Atlanta, GA for a visit to the Georgia Aquarium and the Center for Puppetry Arts, both of which were fantastic (pics forthcoming). Unfortunately, amongst the souvenirs we brought home was the worst sickness my wife and I have had in years, which basically laid us both out until Thursday, and weāve been recovering since.
On top of it, just before we left, I accidentally broke TwtStrm (my WIP TwtTxt reader), so I didnāt even have a functional way to keep up with the only āsocial media platformā I actually give a hoot about (nor a functional brain to try and fix it).
As of this morning, though, Iām happy to report that weāre basically all better, and TwtStrm is back to working. Iām actually hoping to get some code written this weekend (and maybe even try to get Parley running), but weāll see how things go. š
Also apologies. If you want to chat to me in more ~realtime, Iām more active on something weāre calling Parley ā A truly decentralised federated IRC chat system. You have to spin up your own instance (ideally) or join someone elseās, but otherwise you use a normal IRCv3 capable client, but the entire ānetworkā (so to speak) automatically forms a decentralized mesh.
š Calling all decentralised enthusiasts that still remembers and use IRC š
Please come join us in a new, truely, decentralised IRC-based chat experience by standing up your own Parley instance on your own domain (bring your own OIDC auth or use the built-in).
Pick your favourite IRCv3-compatible client (thereās heaps out there!).
And peer with either me james@mills.io or Admin -> Peers -> Add mills.io or @david@daiwei.me via david@ratha.us or simply ratha.us (in Admin -> Peers -> Add).
See you online! š¤ #decentralised #irc #chat
@itsericwoodward@itsericwoodward.com Then by all means, follow the instructions at https://git.mills.io/prologic/parley and setup your own instance on your own domain. Itās partly inspired by Twtxt/Yarn.social and Salty.im ā in at least the way teh DNS discovery and WKID works. Once your instance is up and running and youāve gone through the /setup and created yourself an account (or seti it up with an appropraite ODIC IDP) try something like /msg james@mills.io Hey! at which point you should automatically start peering with my instance. You should then be able to /join #lobby1 (a globally federated channel already across 2 instances so far). š¤
Does anyone have time this weekend to manually test and validate and prove out this spec Iām calling Gitxt? A Twtxt-inspired purely decentralised Git federation/forge? š¤ Hit me up! You need only git, curl and a web server of some kind.
@movq@www.uninformativ.de Ahh, no you can. Much like what weāve built here with Twtxt / Yarn. Iām building a spec, clients can implement the spec, or you can ya know, just curl and git your way through. Iāll link the spec soonā¢, just need to keep refining and testing and make sure this actually works properly š
gitxt is a purely decentralised git forge. There is no federation protocol, no instance-to-instance API, no accounts on other peopleās servers. Each forge instance is fully independent; collaboration is an act of publishing and reading plain text files over HTTP
@movq@www.uninformativ.de In the meantime tell me all your āwishesā and things you wish/want a good decent āpureā decentralised Git forge should do š
I am finally building a Twtxt / Yarn.social inspired Git forge. Iām actually quite confident that yāall will quite like it, but I wonāt post links yet until Iām quietly confident in its design, functionality and behaviour(s).
Stay tuned š¤ Itāll be like no other Git forge youāve ever seen! 𤣠Actually, itās already more like cgit than anything with plain text feeds that power itās āpure decentralizationā as you can no doubt imagine š #twtxt #git #forge
git clone operations in the logs. Most crawlers simply donāt do that and rely on the Git history being available as HTML pages.
@movq@www.uninformativ.de I am seriously rethinking and re-contemplating building a new Git forge of some description that avoids all of these stupid problems that weāre now seeing in the wild
FTR, Iām seeing veeeeeeeeery few actual git clone operations in the logs. Most crawlers simply donāt do that and rely on the Git history being available as HTML pages.
So thatās a win. (For now.)
Real tired of doing these, but hereās another Android developers vs Google update, this time thereās both good and bad news.
The good:
-Users will be able to enable āsideloadingā for all current and future devices, attached to their Google account, rather than having to undergo the tedious 24 hour wait including process, on each device.
-Rather than these changes to āsideloadingā and āadvanced workflowsā being implemented at random different dates, in different countries, weāll all get them come 2027.
The bad:
As GrapheneOS developers recently mentioned āGoogle replaced pushing Git tags for certain source code with obtaining source code via Google Drive after making a request through Google Forms. Itās completely ridiculous and theyāve gradually become very slow at handling requests. Theyāre in clear violation of the GPLv2 now.ā
whole thread: https://grapheneos.social/@GrapheneOS/117057099753905023
@david@daiwei.me Please report any logs from the Javascript console if you can. Itās possible the one commit I made to the Swag framework might be the culprit here. Not sure.
Low stakes hot take: the most important good things in git were already in rcs. rcsācvsāsvnāgit is better overall at each step, but the benefit/complexity ratio gets worse at each step and most things git gets used for would be fine with rcs+patch.
@prologic@twtxt.net Just out of curiosity, have you ever ran this on real hardware? š
Hm, interesting: https://git.mills.io/prologic/muos/src/branch/main/nucleus/nucleus.asm Youāre clearing the VGA buffer in each mode (real mode, protected mode, long mode). Whyās that? Wouldnāt it be good enough to only do that after youāve reached long mode? š¤
So⦠my little experimental Mu (µ) OS is now ~8.7k of Mu and ~2k of Assembly, which makes this about an ~80/20 split. Iāve managed to achieve most of the goals I had set out, by ensuring a tiny Nucleus of only ~2k Assembly and all Policy, Services and Userland written entirely in Mu (a language I also deisnged and created, which still has no support for floats LOL)
Dunno if anyone will find this interesting⦠But some ~6 months or so ago I experimented briefly with creating a whole bootloader + kernel + userland ā Basically an entire OS in the Mu programming language (which as you know I also designed and created) ā 6 months later Iāve worked on it some more after spending the last week working on improvements to Mu itself, which is now able to compile itself with its own Mu implemented compiler and now have an os/arch backend called muos/amd64 that boots into a running shell, with a tiny little vfs, UNIX-like semantics, syscalls, read/write, etc. It works pretty nicely, and aside from a small Assembly ānucleusā, most of the Kernel and Userspace is written in Mu.
@dce@hashnix.club Was it ever really empty on the Codeberg side in the Git repo? š¤
@david@daiwei.me Go down to āReleasesā, thereās a link to the CHANGES: https://movq.de/git/jenny/CHANGES.html
@david@daiwei.me Is this better? š¤ Pretty hard to keep this concise but also not miss anything. š¤ https://movq.de/git/jenny/
@prologic@twtxt.net Even without the gamification and AI, I donāt host anything on GitHub. Just the fact that itās owned by Microsoft spells trouble, in my opinion.
I still have an account, for occasionally contributing to a few specific projects, since a lot of developers wouldnāt know what to do with a patchset, and since many users of GitHub/Lab and Codeberg use send-only email aliases, so git send-email probably wouldnāt work.
Hmm ā¦
My project pages have this āDownloadsā section and I offer tarballs for each release:
https://movq.de/git/jenny/#downloads
I added this many years ago because an OpenBSD dev asked for it (but the project in question didnāt end up in their ports after all).
What are your thoughts on this? Is it necessary to offer tarballs?
I noticed that some distributions have already moved away from using tarballs and instead always clone from Git. š¤
jenny stuff aside, I received zero bug reports or code contributions since leaving GitHub in 2018.
@prologic@twtxt.net Oh, yes, just for clarity: This wasnāt a āpro GitHubā argument. š I wonāt go back there (or to another āforgeā).
I think weāre totally on the same page: Decentralized Git hosting is good, but we havenāt solved the ācollaborationā part yet. Or rather: We have to modernize it. The tools are already there, but (many) people donāt want to use them and think theyāre clunky.
jenny stuff aside, I received zero bug reports or code contributions since leaving GitHub in 2018.
How many tickets and merge requests did you get before moving to your own server?
Hm, these were probably some of the more active projects:
- https://github.com/vain/lariza/issues?q=is%3Aissue%20state%3Aclosed
- https://github.com/vain/pdfPres/issues?q=is%3Aissue%20state%3Aclosed
- https://github.com/vain/xiate/issues?q=is%3Aissue%20state%3Aclosed
So itās not a ton of stuff and there are many āissuesā I opened myself, but itās certainly more than these days.
Havenāt used
git send-emaileven once. I definitely have to look into that soon. Wanted to do that for several years. I typically upload the patch to my server and send a link via IRC.
git send-email is good for sending patches to a mailing list (because then the individual patches can be discussed easily), but since those are dying out as well, it loses its appeal. If you want to send patches to a single person, just sending the link to your repo is far easier. š¤
jenny stuff aside, I received zero bug reports or code contributions since leaving GitHub in 2018.
@movq@www.uninformativ.de Finally, your software is just perfect and finished by now, no need to report non-existing bugs or send in code changes. :-) How many tickets and merge requests did you get before moving to your own server?
I have to admit that I use git format-patch so rarely, I always have to pull it up from my shell history. Havenāt used git send-email even once. I definitely have to look into that soon. Wanted to do that for several years. I typically upload the patch to my server and send a link via IRC.
Maybe I was just very unlucky, but my experience is that you can perfectly ignore people and their work who only do it for the āfameā. Itās almost always been from inferior quality to say the least.
@prologic@twtxt.net Hmmm, I have no idea how to solve that problem. š
Some jenny stuff aside, I received zero bug reports or code contributions since leaving GitHub in 2018.
I thought I had made that super easy, because you can just send me an email ā no sign-up process, nothing. But thatās way too old-school, people donāt know how to use git format-patch (let alone git send-email) and they also donāt understand that they can just send me a link to their forked Git repo (which can be hosted anywhere). Git is super flexible and powerful, but those features are hardly ever used.
Maybe people even need some kind ārewardā, or āfameā. Like those āachievementsā that you can unlock on GitHub. (Something to put in their CV ⦠?)
Oh god 𤣠I mean I had this idea to re-invent āGit hostingā, but failed. Maybe Iāll try it again. I dunno. The thing is I hardly get āIssuesā really, only when I ask nicely, of folks I know every well 𤣠So think at much āsmaller scaleā we need a different solution, and I think @movq@www.uninformativ.de is on to something, but not to the extend implemented, somewhere in the middle I think? š¤
Okay, so this is live now under https://movq.de/git/. (āKurzen Prozess gemacht.ā)
Okay, so, my website also includes my code / git repos, and those are made browsable by stagit. What I donāt like about this (these days) is that this includes all the diffs of my commits. In other words: All my code.
This makes it super easy for malicious crawlers to slurp up valuable data. I donāt like that.
Iām thinking about switching to this instead:
It still shows project infos and there are Atom feeds, but to get the code, you have to actually clone the repos.
š¤
(If you spot any bugs, let me know.)
@dce@hashnix.club You may also be interested in the Twtxt App and the little tiny twtd publishing backend? š¤
So just because I enjoy this kind of thing (looking into laws and trying to understand themā¦):
GDPR is about roles, not ownership
Thereās no property right in personal data under GDPR. The whole regime hangs on three roles:
- Data subject ā the person the data is about.
- Controller (Art. 4(7)) ā āthe natural or legal person ⦠which, alone or jointly with others, determines the purposes and means of the processing of personal data.ā
- The rights in Arts. 16 and 17 are exercised by a data subject against a controller. They compel a third party to rectify or erase. They are not self-executing duties that a piece of software must expose.
Thatās the key. In your architecture, for a userās own posts about themselves sitting in their own feed on their own device:
- the user is the data subject, and
- the user is also the only person ādetermining the purposes and meansā of that data.
There is no third party controller to compel. The āright to erasureā is a right to make someone else delete ā and there is no someone else. It is satisfied the instant the user can change the file. A UI button is a convenience, not a legal requirement. Omitting it removes zero rights, because the data is a plain-text file the user can edit or delete by any means ā editor, sed, git, their file manager. Full practical control is retained; nobody is being denied anything by anyone.
@itsericwoodward@itsericwoodward.com Wrote it up š Single-user twtd API is now documented (plain JSON, one bearer token) ā posting, uploads, profile, followers + WebFinger: https://git.mills.io/yarnsocial/twtd/src/branch/main/API.md š Shout if anythingās unclear for TwtKpr š
twtpub.com is just the default instance tho ā itās a multi-tenant twtd, AGPLv3. Run your own and Iāll list it in the appās picker so folks choose where to land š¤ keeps it decentralised + spreads the load. Docs ā https://git.mills.io/yarnsocial/twtd
š„³ Finally! After nearly 4 years, yarnd v0.16.0 āSilver Sojournerā is out! š Twt Hash v2, SQLite FTS5 search, HTMX-powered UI, first-time setup wizard and literally hundreds of bug fixes š
Release notes: https://git.mills.io/yarnsocial/yarn/releases/tag/0.16.0
Upgrading is fully automatic ā the Twt Hash v2 migration re-fetches all feeds on first start, so expect the first cycle to be a bit heavier. Images on Docker Hub as prologic/yarnd:0.16.0 š
cc @kat@yarn.girlonthemoon.xyz @abucci@anthony.buc.ci @shinyoukai@yume.laidback.moe @eldersnake@we.loveprivacy.club š
So⦠Quick count. Hands up those who are using the Twtxt App? š¤ ā And whoās also pairing this with the twtd publishing backend?
@prologic@twtxt.net done: https://git.mills.io/yarnsocial/feeds/issues/41
@david@daiwei.me as you alter ego, I seriously recommend you stop creating feeds left and right. But whom am I kidding, right?! š
I wonder how long will it take to show a follower on twtd. It only shows the feedās owner, so far.
I wish I could connect this with git.mills.io. I think there is a network issue preventing me from bring able to do it.
Hello everyone ! š Behold I bring you (after many years) the launch of the Twtxt App š ā Ye, this is a Desktop and Mobile app built as a Progressive Web App (PWA) using a little framework (Swag) I put together iafter some experiments @xuu@txt.sour.is and I did in Go and HTMX and Service Workers.
The App is offline-first and supports installing to Desktop and Mobile (add to Home screen) and supports a number of publishing backends, including Yarn.socialās yarnd Pod, Github, Codeberg/Gitea, and a little tiny twtd Twtxt server (See: https://git.mills.io/yarnsocial/twtd).
Please try it out, no need for any account(s) or such, works with your existing feed(s) (as long as the publishing backends work well enough for you!). Please give me feedback! š
Also, did you know the Twtxt Search Engine is back? š
@balloonfu-sen@yarn.girlonthemoon.xyz Do you mind git pull && make build and updating your yarnd instance so itās in-line with the new Hash v2 spec š
@movq@www.uninformativ.de Here you go 𤣠https://git.mills.io/prologic/gonix/src/branch/main/cmd/imgview/main.go
So Iāve been working on GoNIX the last few days⦠Which is derived from µLinux ā At least itās entire build process. GoNIX however has a 100% Go userland, including the init process, package and service management.
Now⦠As an experiment, because I was able to make much process on enhancing the build tools and package management, I decided to see if I could build a āDesktopā Gui of sortsā¦
I still wanted it to be fairly minimal and lightweight. So I went with wayland (of course) and labwc and yambar. So far Iām liking the result š 42 packages in the wayland-desktop meta port. Not too bad. Not sure if I can slim that down anymore⦠But trying to avoid Mesa/GL as that drags in far too much ācruftā.
Whatās your motivation for running this, btw? š¤
Basically, two things a) feeling generous for folks that either canāt afford or find it hard to have a little place to call home (webpage, feed, whatever) and b) a real opportunity to test some of the components that make it possible sshbox, which I know works well as it fronts my Gitea instanceās Git+SSH service and box, a container runtime I wrote a while ago, recently improved, hardened and polished.
Oh come on! Why such a stupid anti-feature!?
WARNING: Your yt-dlp version (2026.03.17) is older than 90 days!
It is strongly recommended to always use the latest version. You cannot update when running from source code; Use git to pull the latest changes. To suppress this warning, add --no-update to your command/config.
@movq@www.uninformativ.de Just working on swag š Andā¦.. Building an Offline-first Yarn/twtxt client that has no server requirements (_other than you need to publish your feed somewhereā¦)
Got absolutely jack and sick of all the fucking useless bots, C&C and shit⢠hitting my Git server tonight 𤬠So I sat down and built a lightweight version of Anubis, called caddy-pow. So now going forward, youāll have to (sorry) have a HS-enabled browser to hit git.mills.io which will hopefully make most (if not all) bots just go the fuck away š¤¦āāļø #Hostile #Web
@lyse@lyse.isobeef.org Oh, no, he was the one providing the feedback. š
mgk appears to be everywhere. His Unicode box drawing demo has been part of my unicode-test script for a long time: https://movq.de/git/bin-pub/file/unicode-test.html#l23
Itās one of the reasons in fact Iāve been working on bob so I have a very concrete and strong foundation for how these things work, how they behave and how bad or good they can be. I am on-purpose building bob to be not only a decent coding tool and general task completion tool, but with serious security boundaries, sanitation, auditing and compliance. If Iām going to succeed at building autoonmous agents that can cope with a wider array of varying inputs (mostly natural language, some structural language) then it needs to be both a) Safe and b) Robust