Site in costruction

Exobrain

Home of inorganic intellectual chaos and unpolished content

Notes

0001-01-01 00:00:00 +0000 UTC

Why make websites simple ?

Cool Android stuff

Team Win Recovery Package
https://twrp.me

Pitch Black Recovery Package

A list of things i want to do in the long term

Italian Espresso Coffee Sommelier

https://www.aicaf.com/it/sommelier-espresso.php

DNS resolution chain from my local system

Schema


0001-01-01 00:00:00 +0000 UTC

Write libnotify notifications to file

TODO: Fork and write a proper build script for this https://github.com/erickloeckner/dbus-notifyd


0001-01-01 00:00:00 +0000 UTC

The case for biparted project structure ( build/src )

I always structure my projects in two main directories: build and src. Build contains "dynamic", temporary, possibily auto-generated stuff. Src contains human-made stuff.

This policy is quite rigid, with very few carefully considered exceptions.

Why ?

Let’s say you want to take the lazy route and put everithing together without much regard.


0001-01-01 00:00:00 +0000 UTC

Blogpost idea: dealing with bad containers

keyw::[blogpost]

Talk about: - containers that do not allow to mount config in a volume-friendly way examples: windmill, element-web

  • bad docker-compose practices: i.e. direct bind mounts


0001-01-01 00:00:00 +0000 UTC

About OOP and theoretical technical righteousness

See Stroustup OOP. Because one influential person says something condivisible, it is that "right" ?

Models are just models

Standards are so only if they get largely accepted

Distinction among exobrain and blog

The Exobrain is a weakly structured blog without constraints on content.

The Blog is the place for curated essay-like documents. A blog post should be at least three paragraphs long. Paragraphs should be dense, about 10 periods. Incorporates a lot of qualities typical of essays.


0001-01-01 00:00:00 +0000 UTC

A small glossary for the Web2.x platform

There is a lot of confusion among my peers about the web platform. What sources are authoritative to define e.g. microservices?


0001-01-01 00:00:00 +0000 UTC

Installing programs trough the OS package manager is an anti-pattern


0001-01-01 00:00:00 +0000 UTC

Custom UID mappings for rootless containers


0001-01-01 00:00:00 +0000 UTC

Adding CoW capabilities to SQLite

  • Using BTRFS snapshots ?

    • Adds dependency on host system. May be necessary using a bundled BTRFS image. Is BTRFS-on-VFS supported ?

      • Apparently no, and for good reason:
        link:https://btrfs.readthedocs.io/en/latest/Hardware.html#storage-model
        With such configuration many assumptions BTRFS makes on storage will be broken. Data corruption guaranteed on the long term.

Someone built a SQLite-like DBMS with builtin CoW capabilities. Interesting, but not stable and thus not trustable.


0001-01-01 00:00:00 +0000 UTC

Loading local environment files in a make process

# Load local environment file. # Since we want to not surprise the user, generate equivalent Make code that # sets each variable only if not already set via CLI envfile = build/make/env_from_file.make $(shell mkdir -p $(dir $(envfile)) && <.local/environment sed -nEe 's!([= ]+)=(.*)$$!export \1 ?= \2!p' > build/make/env_from_file.make) include $(envfile)


0001-01-01 00:00:00 +0000 UTC

Nix ecosystem criticalities

keyw:[nix, nixos]

Nix is a very interesting project that aims to solve fundamental issues of traditional package management systems. However itself presents some issues that makes its adoption difficult.


0001-01-01 00:00:00 +0000 UTC

Graphite pencil’s hardness grades explained

Data from this web page.

La durezza di una matita è data dal tipo di mina, la sua anima in grafite, che ne influenza lo spessore e il colore del tratto. Una matita con mina più dura presenterà un tratto più chiaro e sottile, ma anche più difficile da cancellare, mentre una mina più tenera offrirà un tratto spesso e scuro, più facile da cancellare, ma si consumerà anche più in fretta. Esistono 2 tipi di scale per misurare la durezza di una matita, la scala britannica che utilizza le lettere e quella statunitense che utilizza invece i numeri. Nella tabella qui sotto si possono trovare entrambe le scale con alcune indicazioni sugli utilizzi più idonei.

Grado durezza

Caratteristiche

Utilizzo

Britannico

Statunitense

9B

Molto morbide, tratto nero

Lavori artistici quali schizzi e bozze

8B

7B

6B

5B

4B

Abbastanza morbide, tratto nero

Adatte al disegno a mano libera

3B

2B

#0

B

#1

HB

#2

Durezza media, tratto scuro

Piuttosto versatili, adatte alla scrittura

F

#21/2

H

#3

Mina dura, tratto grigio

Indicate per il disegno tecnico

2H

#4

3H

Piuttosto dure, tratto chiaro

Idonea per progettazioni tecniche o grafiche a livelli avanzati

4H

5H

6H

Molto dure e con tratto molto chiaro

Utilizzate per lavori di litografia, cartografia e xilografia

7H

8H

La lettera H indica le mine più dure (hard) mentre la lettera B indica quelle più morbide (black, ad indicare il tratto più scuro). La lettera F (fine point) invece indica una via di mezzo, né troppo dura né troppo morbida, che, insieme alla HB, via di mezzo leggermente più morbida, è  quella più indicata per l’utilizzo nelle scuole.


0001-01-01 00:00:00 +0000 UTC

My gripes with NixOS

keyw:[nixos, package management, rant]

NixOS is a linux distribution based on Nix, a revolutionary package manager that fixes many fundamental issues of previous generation package managers such as APT and pacman.

While i myself am entusiastic about it, it has several issues that hinder its adoption, reducing it essentially to "Gentoo with extra steps":

  • nix cli utilities are badly designed

  • Too hard to downgrade packages

  • Not actually reproducible

    • Addressed by flakes?


0001-01-01 00:00:00 +0000 UTC

Line wrapping

Hard wrapping is a must for every file to be processed by line-oriented software, like most unix tools or compiler.

Some files do not play well with hard wrapping (e.g git COMMIT_EDITMSG) or is not useful (ADOC files). [1]