fixed the web links

This commit is contained in:
reaction.la 2024-11-03 22:46:38 +00:00
parent ec0e8650cb
commit 0b2e33d0c4
No known key found for this signature in database
6 changed files with 96 additions and 11 deletions

View File

@ -1,5 +1,5 @@
[core]
autocrlf = input
autocrlf = false #line ending issues should be handled in .gitattributes
whitespace = -tab-in-indent,tabwidth=4,indent-with-non-tab,trailing-space,space-before-tab
safecrlf=warn
[apply]

View File

@ -3,9 +3,11 @@ title: How to Save the World
...
I have almost completed an enormous design document for an uncensorable social network intended to contain a non evil scalable proof of share currency, and I have a wallet that can generate secrets, but the wallet is missing no end of critical features it is pre-pre alpha. When it is early pre alpha, I am going to publish it on Gitea, and call for assistance.
Here is a link to one version of the [white paper](social_networking.html), focusing primarily on social media. (But though information wants to be free, programmers need to get paid.)
Here is a link to one version of the [white paper](manifesto/social_networking.html), focusing primarily on social media. (But though information wants to be free, programmers need to get paid.)
Here is a link to [another version](white_paper.html) of the white paper, focusing primarily on money and getting rich by protecting capitalism from the state.
Here is a link to [another version](manifesto/white_paper.html) of the white paper, focusing primarily on money and getting rich by protecting capitalism from the state.
Here is a link to my plan for [conquering the world](manifesto/SWIFT.html).
# Speech and commerce

View File

@ -0,0 +1,61 @@
---
title:
Guix and Shepherd
sidebar: true
misc_links: >-
<a href="set_up_build_environments.md" target="_blank">Set up build environments</a><br>
abstract: >-
I know nothing about Guix. This file exists to record my learning
experience.\
\
The plan is to be able to install Guix on debian, then load a reproducible
configuration file so that I can instantly and reproducibly produce a
host setup the way I want it. (Which nix, lacking its own init
system, cannot quite do, because one always wants to run services.)
...
Guix is primarily a package manager with a declarative functional language
as its package manager.
Which makes it possible to reproducibly create a setup.
Unfortunately the packages are hard to customise,
because access to the
configuration files is restricted and non trivial -- you have to derive your own package from an existing package
Guix solves the problem of dll hell by having any number of configurations living on the same machine --
which leads to massive and rapid accumulation of garbage.
Garbage collection is very slow, and requires either a lot of ram or a lot of swap (12GB swap recommended.
This is a feature I do not want, but wind up suffering, for the advantage of reproducible setups.
To avoid bloat, can use a strategy of re-install from scratch, which Guix makes less painful.
"With Guix System, you declare all aspects of the operating system configuration and Guix takes care of
instantiating the configuration in a transactional, reproducible, and stateless fashion
(see [System Configuration](https://guix.gnu.org/manual/en/html_node/System-Installation.html))."
# What Guix is
A Guix package is a pure function, which generates the install
as directory identified by its hash in `/gnu/store` and then a symbolic link
in the users directory references the package by human readable name, analogous
to git having branch names that point to commits.
Which is great if you have a lot of users each of which might want a different
version of software, but I want to install stuff that will run under
the init system, Shepherd.
The package manager is a great pile of such pure functions,
but if you want to install stuff that is fully configured the way you want it configured,
you are going to have to derive a packages from an existing package
The Guix install system, Shepherd, cannot be a pure function, there can only be one http service,
one wireguard service, and so forth. It has to be the escape hatch that makes a purely functional
system actually do things by not being a purely functional system, akin to Haskell Monads,
an isolated piece of procedural code that make all the purely functional code actually do something.
# Install Guix and Shepherd
not yet begun

View File

@ -3,10 +3,17 @@ title:
Nixos
sidebar: true
misc_links: >-
<a href="set_up_build_environments.md" target="_blank">Set up build environments</a>.<br>
<a href="wireguard.html" target="_blank">Wireguard</a>.<br>
<a href="dovecot.html" target="_blank">Dovecot</a>.<br>
<a href="set_up_build_environments.md" target="_blank">Set up build environments</a><br>
abstract: >-
Unfortunately Nix and Nixos has fallen to the social justice warriors
who are turning it into broken rubbish.\
\
Alternatives: Primary alternative is Guix, which has its own init system, Shepherd, and uses Scheme as its language.
\
I know nothing about nix. This file exists to record my learning
experience.\

View File

@ -4,13 +4,15 @@ title:
sidebar: true
notmine: false
misc_links: >-
<a href="wireguard.html" target="_blank">Wireguard</a>.<br>
<a href="dovecot.html" target="_blank">Dovecot</a>.<br>
<a href="nix.html" target="_blank">nix</a>.<br>
<a href="wireguard.html" target="_blank">Wireguard</a><br>
<a href="dovecot.html" target="_blank">Dovecot</a><br>
<a href="nix.html" target="_blank">nix</a><br>
<a href="guix_and_shepherd.html" target="_blank">Guix and Shepherd</a><br>
abstract: >-
These files are not specific to rhocoin. They are a collection
of notes on setting up operating systems and tools. Every time I mess around
and encounter some grief, I add to this pile of notes.
and encounter some grief, I add to this pile of notes, which has become
inconveniently long and needs to be broken up.
...
# partitioning for linux
@ -3080,6 +3082,19 @@ then put a symlink to your directory in the repository in your apache
directories, whereupon the clone command takes as its argument the
directory url (with no trailing backslash).
### Merge Conflicts
Resolving a merge conflict is usually a little bit messy, creating opportunities to make mistakes
The safest way to resolve a merge conflict is to use git `mergetool`, followed by `git gui`.
`git gui` is useless for resolving merge conflicts, but after having resolved them in your mergetool, then when you click on commit in `git gui`, you
can see that the situation is what you think it is before issuing the commit command.
In linux, git gui is not necessarily available unless you have installed not just `git`, but `git-all`
The best mergetool by far is Meld. But it is preferable to issue the commit command from within `git-gui`,
since you get a more global view of the situation.
## Sharing git repositories

@ -1 +1 @@
Subproject commit b6e1e94cfb3d8dffdb1bb92b6102e5fad5fe6093
Subproject commit de5189af55c7470422f4490ad0d85549b80c011d