Skip to content

Instantly share code, notes, and snippets.

View angerman's full-sized avatar
🇸🇬

Moritz Angermann angerman

🇸🇬
View GitHub Profile
--- machine1.log 2021-12-22 13:31:43.874169884 +0800
+++ machine2.log 2021-12-22 13:31:35.129937614 +0800
@@ -116,85 +116,85 @@
patching file rts/RtsFlags.c
patching file rts/sm/NonMovingMark.c
patching script interpreter paths in .
-./utils/checkUniques/check-uniques.py: interpreter directive changed from "#!/usr/bin/env python3" to "/nix/store/f9nim0k4xcjfsx65rcjnx7b03v92w8dq-python3-3.9.6/bin/python3"
-./utils/llvm-targets/gen-data-layout.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/gidj9y533nwwyjb2pyi6g4h2al1q8imq-bash-5.1-p8/bin/bash"
-./utils/verify-release/verify-packages.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/gidj9y533nwwyjb2pyi6g4h2al1q8imq-bash-5.1-p8/bin/bash"
-./utils/vagrant/bootstrap-deb.sh: interpreter directive changed from "#!/bin/sh" to "/nix/store/gidj9y533nwwyjb2pyi6g4h2al1q8imq-bash-5.1-p8/bin/sh"
@angerman
angerman / build.sh
Created November 27, 2020 12:11
Cross compiling ws-tunnel
# prefetch wstunnel's master for nix, and store the result in wstunnel.json
nix-prefetch-git https://github.com/erebe/wstunnel > wstunnel.json
# and build the wstunnel-tarball with nix, using the haskell.nix infra structure as above (see default.nix)
nix build \
-f default.nix \
rpi64-musl.wstunnel-tarball \
-o rpi64-musl-wstunnel-tarball
--arg wstunnel-json ./ws-tunnel.json
@angerman
angerman / Installation.md
Last active February 1, 2024 11:38
Installing nix on macOS BigSur

The nixos.org website suggests to use:

sh <(curl -L https://nixos.org/nix/install)

For macOS on Intel (x86_64) or Apple Silicon (arm64) based macs, we need to use

sh <(curl -L https://nixos.org/nix/install) --darwin-use-unencrypted-nix-store-volume
NoFib Results
--------------------------------------------------------------------------------
Program Size Allocs Runtime Elapsed TotalMem
--------------------------------------------------------------------------------
CS -0.1% 0.0% 0.122 0.122 0.0%
CSD -0.1% 0.0% +2.6% +2.6% 0.0%
FS -0.3% 0.0% -2.4% -2.5% 0.0%
S -0.0% 0.0% +0.1% +0.1% 0.0%
VS -0.1% 0.0% +4.0% +3.9% 0.0%
NoFib Results
--------------------------------------------------------------------------------
Program Size Allocs Runtime Elapsed TotalMem
--------------------------------------------------------------------------------
CS -4.6% 0.0% 0.122 0.122 0.0%
CSD -4.7% 0.0% +38.2% +38.3% 0.0%
FS -4.8% 0.0% +12.7% +12.7% 0.0%
S -4.6% 0.0% +0.0% +0.1% 0.0%
VS -4.6% 0.0% +9.0% +9.1% 0.0%
This file has been truncated, but you can view the full file.
Listening on http://127.0.0.1:12798
==================
WARNING: ThreadSanitizer: data race (pid=11658)
Read of size 8 at 0x558007ab3e90 by thread T41:
#0 tryWakeupThread rts/Threads.c:253 (cardano-node+0x160cd49)
#1 unpark_tso rts/STM.c:353 (cardano-node+0x16440a6)
#2 unpark_waiters_on rts/STM.c:370 (cardano-node+0x16440a6)
#3 stmCommitTransaction rts/STM.c:1105 (cardano-node+0x16440a6)
#4 stg_atomically_frame_info <null> (cardano-node+0x16390d3)
#5 scheduleWorker rts/Schedule.c:2573 (cardano-node+0x1614a1f)
@angerman
angerman / Thoughts.md
Created July 11, 2020 04:09
Thoughts on GitLab, Phabricator, ...

A central piece of modern collaborative software development is done using source control tools. One of the most prominent being git. While this is by no means the only one, it is probably the most commonly used one with a cottage industry of tooling around it.

While git is conceptually decentralised, it is mostly used though a central server. Today this central server is often GitHub, or to some degree GitLab, and even a lesser some other hosted options. This provides value in that it's easily accessable from a browser (the ubiquitous way to access information today), and provides discovery facilities.

However, one can argue that the most critical part of collaborative software development is

From 0bba971db4bcada2a39e151816c2dc16444455d6 Mon Sep 17 00:00:00 2001
From: Moritz Angermann <moritz.angermann@gmail.com>
Date: Thu, 14 May 2020 08:10:43 +0800
Subject: [PATCH 1/9] [ghc-prim] ghc-prim needs to depend on libc and libm
libm is just an empty shell on musl, and all the math functions are contained in
libc.
---
libraries/ghc-prim/ghc-prim.cabal | 5 +++++
1 file changed, 5 insertions(+)
@angerman
angerman / nixos-on-rockpi4.org
Created May 28, 2020 13:53
NixOS on RockPi4

Installing NixOS on the RockPi4 (B)

The general plan is to build an sd-image-aarch64 from nixpkgs/nixos/modules/installer/cd-dvd/sd-image-aarch64.nix flash it to the eMMC and have the system come up, similar to how this “just works” for raspberry-pis.

The RockPi 4 is a RockChip RK3399 based board, build by radxa with the same formfactor as a rasperry Pi. One noticable difference is that the Rock Pi’s cpu is at the bottom to better allow for the

@angerman
angerman / to-sql.py
Last active December 11, 2019 12:55
#!/usr/bin/env nix-shell
#!nix-shell -i python3 -p python3 --pure
import sys
from pprint import pprint
stack = []
timestack = []
n = 0