An actually **simple** simplestreams server

I betcha a lotta people have been wanting to setup a simplestreams server. So what’s the big deal? Well, it ain’t so simple.

Me and my team have been looking for a simplestreams server that is easy to setup and works well. We have been unable to find one that does either.

The recommended setup of creating an apache server with stream JSONs is not simple, so that wasn’t going to work for us. And other solutions (such as https://github.com/Avature/lxd-image-server) just don’t work as expected. After trying various other solutions, we decided to just make our own image server.

Me and @Wolfo-Gaming have created a simplestreams server thats easy to setup so you can scale your images, powered by Prisma & Express.

Simply add rows to your database of choice using Prisma studio (or the image uploader we are working on) to add images, and put the image files in the corresponding storage folder and boom. Simplestreams server.

Check it out here

1 Like

This recent post might be of interest as well:

Our tool actually auto-generates the streams as well as runs the server. Reads completely from a database to generate the streams.

I thought I should also mention we just put up documentation for installing the image server.

You’re right, my tool only generates the simplestream files. Its only dependency is plain python and a http server. Files can be moved from a build service to the server using sftp, rsync or whatever.

Yours has plenty of language dependencies plus an SQL server. Uploads are done through the POST /images endpoint. I couldn’t help, but notice that it has no authentication and that it’s vulnerable to path traversals… lowered risk depending on the network configuration, but still. :slight_smile: You might want to fix that to prevent anyone uploading arbitrary data at will to your servers.

Thanks for sharing.

Yeah, i know that it currently doesnt have auth. im still thinking about how i should implement that.