Projects

An assortment of personal and work related projects.

Posts

Some posts, most written ages ago.

Adding Custom Nginx Options in NixOS

NixOS comes with a pretty good set of options for configuring nginx the nix way, but there are still plenty of things for which you have to fall back to using the extraConfig option and write plain nginx config lines.

This is fine most of the time, but if you have a larger set of options that you're applying often, it can be a lot nicer to have proper nix options for it.

Building multi-arch docker images with nix inside docker

During the preparation of moving some servers to aarch64, Some some nix-build docker images had to be changed from being x86-64 only to a multi-arch image.

Flocken worked wonderful for this purpose at first, until running the build from inside a forgejo action runner. Since the build process runs inside a docker container the buildah process runs into some issue caused by the constrained environment.

Using nix based docker images in gitea actions

Gitea recently added an integrated CI/CD setup that's (mostly) compatible with GitHub Actions based around act.

Using out of the box components this almost makes a great nix-based workflow running, but it requires a bit of work to get up and running.

Group Folders and Nextcloud 15

Humble beginnings

About a year and a half ago, after hearing some people voice complaints about the less than optimal setup for having administrator defined folders shared within an organization, I set out to write an app to simply the setup for the administrators and make things more clear for the user.

How hard could it be, simply create some folders outside of the user's home directories, re-use some existing logic for restricting access and mount it in the configured location for members of a group. Add a simple UI on top to configure the whole lot and everybody should be happy right?

Using webpack code splitting in Nextcloud

Webpack can be a great tool when creating Nextcloud apps, bundling all your javascript and 3rdparty libraries together into a single transpiled and minified bundle for the browser to load.

However bundling everything together into one file doesn't always lead to the best user experience, having to load large amounts of (3rdparty) javascript every time the page is loaded even though large portions of the code might not always be needed.

Running Collabora Online with Nextcloud and nginx

Today Nextcloud announced support for online office with Collabora Online using a docker image to host the Collabora Online server.

The announcement contains steps of how to setup the docker image and integrate it with Nextcloud for users using apache as a web server, this post will explain how to set everything up with nginx.

Building ownCloud apps using React.js

This post describes the trough steps needed to create an ownCloud app with a React.js based frontend. As an example we will be rebuilding a simplified version of the logreader app, a single page app with the entire ui (save for some small chrome that comes with oC) made in React. Since this app uses a fairly simple read-only php backend we can focus on the client side part of the app.