The Dam: a Guix public access server The Dam: a Guix public access server GNU Guix needs your help 💚 There’s a fundraising campaign right now to help sustain Guix development and infrastructure. Donate / Learn more → The Dam is a PubNix –a public access UNIX server–: a computer running the GNU Guix operating system , shared by different people over the internet. Get lifetime (the-dam.org's life,…
The Dam typrography The Dam typrography This document showcases the Dam 's typographic features available to documentation writers. Some of the choices are laconically explained. This document also serves as an integration test for the export mechanism. 1. Basics The documentation is written in org-mode , exported as HTML. An #+INCLUDE directive at the top sets the HTML export options and inlines…
A slack clone in 5 lines of bash A slack clone in 5 lines of bash The title oversells the content a bit 1 1: Some called it disingenous dickish clickbait. I don't disagree ;-) : first, Slack (or Mattermost, or even the Internet Relay Chat (IRC)) offer slightly more features than the Simple Unix Chat system ( suc ), the topic of this piece; then, suc 's actual line count exceeds five. Nevertheless,…
Reference: finger servers Reference: finger servers Here is a list of the currently ( <2024-03-18 Mon> ) known working finger servers. Contact root if you want your server added to or removed from this list. finger @the-dam.org of course, finger @graph.no weather information, finger @plan.cat .plan hosting, finger @tilde.town a little community that exists on a linux server, finger @typed-hole.org…
Tutorial: Add Beaver Labs' Channel to Guix Tutorial: Add Beaver Labs' Channel to Guix In this tutorial, we will follow alice as she configures Guix to use Beaver Labs' channel. This channel contains code needed by many other tutorials and howtos. Channels add to GNU Guix's available packages, system services, etc. 1. Checking your current channels alice runs guix describe She looks for Beaver…
Tutorial: git - suc integration Tutorial: git - suc integration In this tutorial, we see how alice gets notified on a suc channel when someone pushes on one of her git repository. 1. Prerequisites This tutorial assumes that alice has a git repository, see Tutorial: create a git repository . Refer to A slack clone in 5 lines of bash for an explanation of how suc works 2. Conventions:…
Tutorial: Git hosting Tutorial: Git hosting In this tutorial, we will follow root as she configures her GNU Guix server to host git repositories. 1. Add Beaver Labs' channel root follows the instructions in Tutorial: Add Beaver Labs' Channel to Guix . She runs: guix describe She checks in the output that Beaver Lab's channel is here (as shown above). 2. Configure SSH Accessing git repositories…
Aggressive Guix garbage collection on the Dam Aggressive Guix garbage collection on the Dam On a multi-tenant GNU Guix system like the Dam , unprivileged users can trigger the download and installation of software in the store , the read-only part of the filesystem where all the software is. Left unchecked, this capability will lead to the store eating all the available space. Here we explain how…
Writing a secure privileged bash script Writing a secure privileged bash script This meat of this article comes from an email from Chet Ramey , the current bash maintainer. Chet was kind enough to explain to me how to write a privileged bash script in such a way that users of the script can not use it for privilege escalation. All quotes in this article come from his email, unless otherwise…
Tutorial: change your default finger answer Tutorial: change your default finger answer In this tutorial, you will follow alice through the steps she takes to change the message users see when they run finger alice@the-dam.org . The Dam finger server's default setup is to display the following text for users who have not changed their message yet: Looks like alice hasn't customized their message…
Tutorial: create a git repository Tutorial: create a git repository In this tutorial, you will follow alice through the steps she takes to create (and optionally share) a git repository. Conventions : alice owns the repository, substitute your username; the-dam.org : name of git enabled server, subtitute your server's domain name or IP; users : name of the group alice wants to share code with,…
Tutorial: set up a static finger message Tutorial: set up a static finger message In this tutorial, you will follow alice through the steps she takes to have a static message displayed to users who query finger alice@the-dam.org . First alice replaces /srv/finger/alice (which is by default a link) with a copy of the default script from the fingerd package: guix pull # Make sure you have the latest…
Adapting Plan 9's listen to GNU Guix Adapting Plan 9's listen to GNU Guix Here is a comprehensive adaptation of Plan 9's elegant network service management design to the Linux environment, focusing on the Guix System distribution. The proposed listen utility initiates network services by executing files named after the protocol and port they serve. This approach offers significant advantages over…
The dam: Now what ? The dam: Now what ? Congratulations ! You've got an account on the Dam :) Now, what can you do with it ? As of <2024-04-14 Sun> , host git repositories, web pages, web applications, finger statuses, or any arbitrary TCP server. You can also play with inferno. 1. Login To login to the Dam , just ssh to it: ssh <your-login>@the-dam.org 2. 🐱 Chat The first thing you can do is…