Haskell package permission issues

Sometimes building certain Haskell projects results in some mysterious errors like this:

hsc2hs: .stack-work/dist/x86_64-linux-tinfo6/Cabal-3.2.1.0/build/System/Clock_hsc_make: createProcess: runInteractiveProcess: exec: permission denied (Permission denied)

It turns out that some build tools like hsc2hs use /tmp to build, but for Security reasons, my /tmp directory is mounted as noexec. In order to allow these builds to happen, you can temporarily enable execution on /tmp and then disable it again:

# enable
sudo mount -o remount,exec /tmp
# disable
sudo mount -o remount,noexec /tmp

Weird screen colours / tinting

Once, after a system upgrade, all the colours on the screen were tinted brown. This was temporarily (for the session) cleared by executing xcalib -c which clears the colour profile for the display. See this thread on the Archlinux forums.

System timers / services not enabled

I have two system timers / services which “disappear” each time I reboot: freshclam and backup-snapshots. I think that is because of these lines in dmesg:

[   89.308028] systemd[1]: freshclam.timer: Failed to open /etc/systemd/system/freshclam.timer: No such file or directory
[   89.308035] systemd[1]: backup-snapshots.timer: Failed to open /etc/systemd/system/backup-snapshots.timer: No such file or directory
[   89.308040] systemd[1]: backup-snapshots.service: Failed to open /etc/systemd/system/backup-snapshots.service: No such file or directory

My guess is that because these files are symlinked to my dotfiles which reside in /home and /home is actually a mountpoint for the MainVolGroup-home logical volume, if this volume isn’t mounted yet (which I’m not sure it is by this point) then these symlinks won’t work.

I think this is correct, because in this log we get these lines after the above failures:

[   89.360321] systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point.
[   89.360375] systemd[1]: Reached target Local Encrypted Volumes.

The only way to solve this is to copy the files instead of symlinking them, because dependencies etc. can’t work until the unit file is loaded, which is impossible.

Long boot time

The boot process seems to hang around the same point each time, and takes nearly a minute to finish.