fix: enable syntax highlighting on all code blocks
This commit is contained in:
parent
47848dd1a7
commit
2769f22dfc
|
@ -12,8 +12,8 @@ tl;dr:
|
||||||
|
|
||||||
### Example hook
|
### Example hook
|
||||||
|
|
||||||
```bash
|
```shell
|
||||||
#!/bin/bash
|
#!/bin/sh
|
||||||
|
|
||||||
if ! mount | grep -q '/boot/efi'; then
|
if ! mount | grep -q '/boot/efi'; then
|
||||||
mount /boot/efi
|
mount /boot/efi
|
||||||
|
|
|
@ -8,7 +8,7 @@ Since I always struggle with DNS records for mailservers... here are some exampl
|
||||||
|
|
||||||
## DMARC
|
## DMARC
|
||||||
|
|
||||||
```
|
```text
|
||||||
_dmarc TXT "v=DMARC1; p=none; rua=mailto:dmarc@domain.tld"
|
_dmarc TXT "v=DMARC1; p=none; rua=mailto:dmarc@domain.tld"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@ _dmarc TXT "v=DMARC1; p=none; rua=mailto:dmarc@domain.tld"
|
||||||
|
|
||||||
## SPF
|
## SPF
|
||||||
|
|
||||||
```
|
```text
|
||||||
@ TXT "v=spf1 mx -all"
|
@ TXT "v=spf1 mx -all"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
@ -22,28 +22,28 @@ So, the final solution was:
|
||||||
|
|
||||||
- create a custom runlevel (I chose the name "async", but it doesn't matter)
|
- create a custom runlevel (I chose the name "async", but it doesn't matter)
|
||||||
|
|
||||||
```bash
|
```console
|
||||||
sudo mkdir /etc/runlevels/async
|
$ doas mkdir /etc/runlevels/async
|
||||||
```
|
```
|
||||||
|
|
||||||
- add `default` as a [stacked runlevel](https://wiki.gentoo.org/wiki/OpenRC/Stacked_runlevel)
|
- add `default` as a [stacked runlevel](https://wiki.gentoo.org/wiki/OpenRC/Stacked_runlevel)
|
||||||
|
|
||||||
```bash
|
```console
|
||||||
sudo rc-update add -s default async
|
$ doas rc-update add -s default async
|
||||||
```
|
```
|
||||||
|
|
||||||
- remove services from `default` and add them to `async`
|
- remove services from `default` and add them to `async`
|
||||||
|
|
||||||
```bash
|
```console
|
||||||
sudo rc-update del chronyd
|
$ doas rc-update del chronyd
|
||||||
sudo rc-update add chronyd async
|
$ doas rc-update add chronyd async
|
||||||
```
|
```
|
||||||
|
|
||||||
- add changing runlevel to `async` to `inittab`
|
- add changing runlevel to `async` to `inittab`
|
||||||
|
|
||||||
Add this line to `/etc/inittab`:
|
Add this line to `/etc/inittab`:
|
||||||
|
|
||||||
```
|
```text
|
||||||
::once:/sbin/openrc async
|
::once:/sbin/openrc async
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@ with minimal setup, but... I'd really like to get Spotify to run natively, mostl
|
||||||
Let's start by downloading Spotify's deb package from [the official repository](https://repository-origin.spotify.com/pool/non-free/s/spotify-client/) and unpacking it into downloads.
|
Let's start by downloading Spotify's deb package from [the official repository](https://repository-origin.spotify.com/pool/non-free/s/spotify-client/) and unpacking it into downloads.
|
||||||
Most of the files are in `usr/share/spotify`, so we'll try to just go there and run it.
|
Most of the files are in `usr/share/spotify`, so we'll try to just go there and run it.
|
||||||
|
|
||||||
```
|
```console
|
||||||
$ cd usr/share/spotify
|
$ cd usr/share/spotify
|
||||||
$ ./spotify
|
$ ./spotify
|
||||||
zsh: no such file or directory: ./spotify
|
zsh: no such file or directory: ./spotify
|
||||||
|
@ -19,7 +19,7 @@ zsh: no such file or directory: ./spotify
|
||||||
|
|
||||||
Oh right, it's missing some stuff. What stuff though?
|
Oh right, it's missing some stuff. What stuff though?
|
||||||
|
|
||||||
```
|
```console
|
||||||
$ ldd spotify
|
$ ldd spotify
|
||||||
(114 lines skipped...)
|
(114 lines skipped...)
|
||||||
Error relocating ./libcef.so: __libc_realloc: symbol not found
|
Error relocating ./libcef.so: __libc_realloc: symbol not found
|
||||||
|
@ -44,7 +44,7 @@ Error relocating ./spotify: __cxa_thread_atexit_impl: symbol not found
|
||||||
|
|
||||||
It seems that it uses a lot of glibc-specific stuff, but we can use Adelie Linux's [gcompat](https://git.adelielinux.org/adelie/gcompat) to make it work.
|
It seems that it uses a lot of glibc-specific stuff, but we can use Adelie Linux's [gcompat](https://git.adelielinux.org/adelie/gcompat) to make it work.
|
||||||
|
|
||||||
```
|
```console
|
||||||
$ apk add gcompat
|
$ apk add gcompat
|
||||||
(1/3) Installing musl-obstack (1.2.2-r0)
|
(1/3) Installing musl-obstack (1.2.2-r0)
|
||||||
(2/3) Installing libucontext (1.1-r0)
|
(2/3) Installing libucontext (1.1-r0)
|
||||||
|
@ -69,14 +69,14 @@ so I pushed my changed to a fork on GitHub instead of creating a merge request t
|
||||||
|
|
||||||
After recompiling gcompat and trying to run Spotify again, it still complains about missing glibc:
|
After recompiling gcompat and trying to run Spotify again, it still complains about missing glibc:
|
||||||
|
|
||||||
```
|
```console
|
||||||
$ ./spotify
|
$ ./spotify
|
||||||
Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by libcef.so)
|
Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by libcef.so)
|
||||||
```
|
```
|
||||||
|
|
||||||
Fortunately, another `patchelf`, this time to `libcef.so`, makes the error go away:
|
Fortunately, another `patchelf`, this time to `libcef.so`, makes the error go away:
|
||||||
|
|
||||||
```
|
```console
|
||||||
$ patchelf --remove-needed ld-linux-x86-64.so.2 libcef.so
|
$ patchelf --remove-needed ld-linux-x86-64.so.2 libcef.so
|
||||||
$ ./spotify
|
$ ./spotify
|
||||||
```
|
```
|
||||||
|
@ -91,7 +91,7 @@ but as we don't use the loader, we can remove it from the Makefile and build aga
|
||||||
|
|
||||||
Another recompile of gcompat later, maybe now it would launch?
|
Another recompile of gcompat later, maybe now it would launch?
|
||||||
|
|
||||||
```
|
```console
|
||||||
$ ./spotify
|
$ ./spotify
|
||||||
[1] 26559 segmentation fault (core dumped) ./spotify
|
[1] 26559 segmentation fault (core dumped) ./spotify
|
||||||
```
|
```
|
||||||
|
@ -124,7 +124,7 @@ Aaand... it shows a window!
|
||||||
Sadly, after a while, the enthusiasm goes away - the window stays white and doesn't display any content.
|
Sadly, after a while, the enthusiasm goes away - the window stays white and doesn't display any content.
|
||||||
Command line argument `--show-console` doesn't give us any helpful info either:
|
Command line argument `--show-console` doesn't give us any helpful info either:
|
||||||
|
|
||||||
```
|
```console
|
||||||
$ ./spotify --show-console
|
$ ./spotify --show-console
|
||||||
14:54:32.302 I [f:156 ] Access allowance changed from online: 0 stream: 0, sync: 0, persistent conn: 0 to online: 1 stream: 1, sync: 0, persistent conn: 1
|
14:54:32.302 I [f:156 ] Access allowance changed from online: 0 stream: 0, sync: 0, persistent conn: 0 to online: 1 stream: 1, sync: 0, persistent conn: 1
|
||||||
14:54:32.334 I [f:77 ] Connectivity policy is initially allow_all
|
14:54:32.334 I [f:77 ] Connectivity policy is initially allow_all
|
||||||
|
@ -135,7 +135,7 @@ $ ./spotify --show-console
|
||||||
|
|
||||||
Okay, but A. Wilcox [had the same issue](https://catfox.life/2020/07/06/live-from-adelie-streaming-spotify-on-musl/) - maybe we can use that?
|
Okay, but A. Wilcox [had the same issue](https://catfox.life/2020/07/06/live-from-adelie-streaming-spotify-on-musl/) - maybe we can use that?
|
||||||
|
|
||||||
```
|
```console
|
||||||
$ ldd spotify
|
$ ldd spotify
|
||||||
/lib/ld-musl-x86_64.so.1 (0x7f0b5dbf5000)
|
/lib/ld-musl-x86_64.so.1 (0x7f0b5dbf5000)
|
||||||
libgcompat.so.0 => /lib/libgcompat.so.0 (0x7f0b5dbe1000)
|
libgcompat.so.0 => /lib/libgcompat.so.0 (0x7f0b5dbe1000)
|
||||||
|
@ -150,7 +150,7 @@ $ ldd spotify
|
||||||
|
|
||||||
It seems to match (libm/libdl before libcef), so let's try removing them and see what happens:
|
It seems to match (libm/libdl before libcef), so let's try removing them and see what happens:
|
||||||
|
|
||||||
```
|
```console
|
||||||
$ patchelf --remove-needed libm.so.6 libcef.so
|
$ patchelf --remove-needed libm.so.6 libcef.so
|
||||||
$ patchelf --remove-needed libdl.so.2 libcef.so
|
$ patchelf --remove-needed libdl.so.2 libcef.so
|
||||||
$ ./spotify --show-console
|
$ ./spotify --show-console
|
||||||
|
@ -163,7 +163,7 @@ $ ./spotify --show-console
|
||||||
|
|
||||||
Unfortunately, it still shows the white window and `strace` reveals that it still segfaults:
|
Unfortunately, it still shows the white window and `strace` reveals that it still segfaults:
|
||||||
|
|
||||||
```
|
```console
|
||||||
28567 +++ killed by SIGSEGV (core dumped) +++
|
28567 +++ killed by SIGSEGV (core dumped) +++
|
||||||
28566 +++ killed by SIGSEGV (core dumped) +++
|
28566 +++ killed by SIGSEGV (core dumped) +++
|
||||||
28565 +++ killed by SIGSEGV (core dumped) +++
|
28565 +++ killed by SIGSEGV (core dumped) +++
|
||||||
|
|
Loading…
Reference in a new issue