tidbyt / pixlet

Build apps for pixel-based displays ✨
https://tidbyt.com
Apache License 2.0
756 stars 107 forks source link

Linux binary only (partially) works on Debian (and co.) #1084

Open lunaflight opened 1 month ago

lunaflight commented 1 month ago

The documentation should be updated to highlight that the linux binaries may not work if you are on a non-debian-related distro. This should be an easy update to the documentation, so linux users are aware of the shortcomings of the binary in the releases.

To reproduce:

On a non-debian-related linux machine,

  1. Install pixlet via the following method
    curl -LO https://github.com/tidbyt/pixlet/releases/download/v0.33.3/pixlet_0.33.3_linux_amd64.tar.gz
    tar -xvf pixlet_0.33.3_linux_amd64.tar.gz
    chmod +x ./pixlet
    sudo mv pixlet /usr/local/bin/pixlet
  2. Create a file main.star with the following contents
    
    load("render.star", "render")
    load("http.star", "http")

def main(): url = "https://www.google.com" http.get(url) return render.Root(child=render.Text(""))

3. Run the following
```sh
pixlet serve main.star
  1. The following output is generated
    2024/08/06 22:25:39 listening at http://127.0.0.1:8080
    SIGSEGV: segmentation violation
    PC=0x7f52714482a6 m=4 sigcode=1 addr=0x1e83c0
    signal arrived during cgo execution

The above is successfully reproduced in Fedora, Arch. The segmentation fault is not present when done in Debian, Ubuntu.

On Fedora / Arch, building from source makes pixlet serve main.star work successfully.