Show and Tell: What are you working on?

a simple thread to share your free software projects and contributions!

i’ll go first, currently mainly working on two projects:

a set of patches for openrc adding modern features, initially adding user services, with socket activation and linux namespaces planned

a vulkan renderer in c for vtubing (streams or videos with a 3d/2d animated model, usually with motion capture of the person recording)

(neither have links yet but i’ll make sure to edit this and add links once they’re set up)

I’m working on something related, actually: I’m working on an init system/service manager with these features, for the purpose of replacing OpenRC in my system, from scratch. Writing a new init system is probably a very dumb thing to do, but alas.

I’m also doing a bunch of normal maintainer work, have heaps of patches and RFCs to review for Hare that I’m excited about.

2 Likes

I’m currently working on a Scheme implementation in Hare, and I’ve been translating https://www.wikifunctions.org on-and-off. Sadly my work-related projects aren’t released as FOSS at the moment, although that is an option I should look into.

Some projects which I maintain:

Some random contributions:

Other types of contributions are usually bug reports as well.

Currently the projects I invest most time into are:

  • go-mail: A comprehensive and easy to use Go package for sending mails
  • apg-go: A “Automated Password Generator” clone written in Go. (It’s basically that good old apg with some modern features and a Go API)

But I have a couple of other FOSS projects as well.

I wanted to get more comfortable with Python, so I started contributing to ArchiveBox which is a self-hosted web archiving tool that is something I had wanted to set up for myself, anyway.

I also created Frozen Soup, a small Python tool/library to create single-file HTML snapshots of websites.

And it is not something I’m working on actively any longer, but my most recent big project (by volume of code) was Scat POS, a point-of-sale and ecommerce system built with PHP and MySQL that we used to run our retail store. (It’s closed now, thus the inactivity.)

This is really neat – I see that it integrates with non-free services like Pinboard and Pocket, maybe you’d consider working on support for Linkhut?

The work I’ve been doing is on improving the importing tools and flow so it will more easily integrate with anything that speaks conventional formats and protocols. Like replacing the grotty home-grown RSS parsing it was doing to replace it with the battle-tested feedparser Python library.

I was trying to import my own data into an ArchiveBox instance, hit bugs, and got so offended at the underlying code that I had to fix it. A classic FLOSS development arc.

1 Like

I’m working on Rust bindings to Forgejo’s web API => https://codeberg.org/Cyborus/forgejo-api!

I just merged the PR for auto-generating the crate from Forgejo’s Swagger file earlier today, and while doing so, discovered a couple bugs in it!

1 Like

I’ve been working on something related to this: a service manager for user sessions. In reality, my service manager is just a shell script which provides a high-level wrapper around the s6 family of utilities, which implement the bulk of the work.

Related: I also wrote dbus-waiter, a small tool that runs another dbus service. dbus-waiter emits readyness notifications when the service actually takes its expected dbus name. I use this to start supervised services which depend on each other only when their dependency is ready to receive clients.

I do encourage others in the field to look into s6’s readiness notification mechanism; it’s nice and simple design which I hope can gain adoption in other service managers too.

1 Like

i’m looking at s6’s fd holding and socket bindings mechanisms, as an inspiration for when i implement socket activation on openrc.

will for sure look at readiness, see if there’s concepts there that i can apply on openrc

1 Like

My two main projects at the moment are contributing to Forgejo, and rebuilding my server on NixOS - with a twist: my configuration is written in a literate style using Org + Org Roam (I had great success with that when building my workstation config, so I’m going to use it for all future NixOS configs too).

I’m also working on a small tool that’ll take a set of git repos, and replace all files with garbage, with the goal of serving those repos for select bad actors (not necessarily to poison them, but to make the source useless to them), while everyone else gets the real deal. This one is not public yet.

Working on downstreaming changes for 8bloat. Upstream’s new theme looks snazzy.

Sounds interesting, ones I’m aware of are: Innochi2D, were IIRC even trying to get the dependencies for compiling it got too involved (mostly blaming this on D being too niche); And Kalidoface3D which sadly seems abandoned which for NodeJS projects tends to be fatal.
(Interest for me being just things like a webcam avatar btw, so not vtubing)

1 Like

my tool is that basically, tho it renders to a window, for now obs can do the v4l2loopback part to get it as a webcam input, but if i can figure out how to render vulkan to a webcam node i might add it as a backend

calling it “for vtubing” is just so people understand what it does easier, but in truth it’s a 3d avatar puppeteering tool and renderer

1 Like

I’m on a marathon of hardware project: the first on was turn indicators for a bike trailer, now I’m finishing up a hot plate for SMD soldering (surprisingly difficult), and then I’m moving on to switched power supplies, including bike dynamo battery chargers, in preparation for another camping trip.

Apart from that, I want to come back to the CartoCSS interpreter for QGIS so I can make some decent maps for the trip.

1 Like

I’m constantly looking for ways to make FOSS more approachable and in particular easier to build source. Hare is on my radar for this reason, though lately I’ve been working on more HLL software using Lua and LÖVE (a game engine I use to build non-game tools). Both are quite easy to build. My most recent project is a little programming environment that you can use to create small Lua programs on your phone: Lua Carousel.

Carousel is hackable in two ways:

  1. You can use it to create little scripts on your phone or computer.
  2. You can connect to it on a computer to modify its source code as it runs without needing to restart it.

Check out the devlog there for lots of examples of the sorts of things it enables. One idea I have lately is it’s a public service to not just list our favorite tools but also be showing off things we build using them. Doing so alleviates the pressure on projects to put out new releases to show “proof of life.” In this vein, if you use Carousel please send me any scripts you build no matter how trivial. I’d love to showcase them on the devlog.

3 Likes

I’m working on librekit, which is a free as in freedom re-implementation of Gimkit, an educational browser game.

Currently working on mcron, a cronjob scheduler that wake up the machine when suspended. This target linux smartphones, and would make some hacks from Sxmo obsoletes.

1 Like

Nice, in Hare too!

I was working at some point on a cron-alike for Hare (never got off the ground) which would have some improvements over cron(8), but never got around to it. I might pick it back up at some point and draw pieces from your codebase.

AGPL though? Bit of an odd choice.