# Vieter {{< hint warning >}} **Important** Because this project is still in heavy development, this documentation tries to follow the development branch & not the latest release. This means that the documentation might not be relevant anymore for the latest release. {{< /hint >}} ## Overview Vieter has a few main features: * It's a simple & lightweight implementation of an Arch repository server * It allows for uploading of built package archives * It supports a basic build system to periodically re-build packages & upload them to the server {{< hint info >}} **Note** While I mention Vieter being an "Arch" repository server, it works with any distribution that uses Pacman as the package manager. I do recommend using a base docker image for your distribution if you wish to use the build system as well. {{< /hint >}} ### Why? Vieter is my personal solution for a problem I've been facing for months: extremely long AUR package build times. I run EndeavourOS on both my laptops, one of which being a rather old MacBook Air. I really like being a beta-tester for projects & run development builds for multiple packages (nheko, newsflash...). The issue with this is that I have to regularly re-build these packages in order to stay up to date with development & these builds can take a really long time on the old MacBook. This project is a solution to that problem: instead of building the packages locally, I can build them automatically in the cloud & just download them whenever I update my system! Thanks to this solution, I'm able to shave 10-15 minutes off my update times, just from not having to compile everything every time there's an update. Besides this, it's also just really useful to have a repository server that you control & can upload your own packages to. For example, I package my st terminal using a CI pipeline & upload it to my repository! ### Why V? I had been interested in learning V for a couple of months ever since I stumbled upon it by accident. It looked like a promising language & turned out to be very fun to use! It's fast & easy to learn, & it's a nice contrast with my usual Rust-based projects, which tend to get quite complex. I recommend checking out their [homepage](https://vlang.io/)! ### What's with the name? Before deciding to write this project in V, I wrote a prototype in Python, called [Pieter](https://git.rustybever.be/Chewing_Bever/pieter). The name Pieter came from Pieter Post, the Dutch name for [Postname Pat](https://en.wikipedia.org/wiki/Postman_Pat). The idea was that the server "delivered packages", & a good friend of mine suggested the name. When I decided to switch over to Vieter, I changed the P (for Python) to a V, it seemed fitting.