How to install PICO-8 on GameShell

a small PS

cpi@clockworkpi:~/apps/Menu/50_PICO-8$ ls
pico8  pico8.dat  pico8_dyn  PICO-8.png

in os v0.21 ,already installed wiringPI for pico-8

so like above ,create a folder with name of 50_PICO-8 <- here the 50_ is for the order in launcher ,but not necessarily
PICO-8.png is the icon is where to start pico-8
They all have the same name as the directory, but different extensions

from v0.2x, launcher can read items from ~/apps/Menu, doing so will facilitate future data migration , launcher switching

cpi@clockworkpi:~/apps/Menu/50_PICO-8$ cat 

SDL_VIDEODRIVER=x11 DISPLAY=:0 ./pico8_dyn -splore -draw_rect 32,0,256,240

chmod +x


really working well meow :slight_smile:

I found that installation is very easy with launcher 1.24.

Just place archive inside directory /home/cpi/games/PICO-8.

That’s all)

I receive my GameShell and Pico 8 is awesome on it :slight_smile: but with my config (rebuild from 0.3 image sd card and last launcher 1.24) i have some instability: All is ok in first run after reboot but if i play some games in pico8 and quit pico8 to return to launcher when i try to restart Pico8 i have a black screen and i stuck: i can only reboot GameShell.

For someone that have the same trouble i find that if i force the size of windows in pico8 config file that correct the trouble for me. Here the change:

Edit the file ~/.lexaloffle/pico-8/config.txt (in ssh with nano)

change the line
window_size 0 0
window_size 320 240

Save and that it


I still can’t get Pico 8 to run dropped the zip file in the directory. Edited the config file for the screen size. Nothing still a black screen and straight back to the ui.

Did you keep the zip file exactly the same as when you downloaded it from the Lexaloffle/Humble Bundle site? Exact same filename, extension, and case?

And you’re copying it to /home/cpi/games/PICO-8 ?

Yeah I sure did nothing has changed

Did you try to launch it twice? The first launch leads straight back to the UI, the second launch should actually run PICO-8.
Also, maybe your config is messed up. Simply delete config.txt. Launch PICO-8, wait a little. Then close it. It should create a fresh config file on shutdown. Check if config.txt exists now and isn’t empty. Does it work now?

我购买并下载了 之后
将下载好的 放进我的gameshell\home\cpi\games\pico-8目录下
直接进入已经升级到 clockworkOS v0.3的pico-8中,自动运行就搞定了。



I have the same problem – zip file right off Lexaloffle into that directory… doesn’t show up. Where should it appear? At the home menu? I rebooted, tried LauncherGo instead… reloaded UI… all nothing…

Also, maybe dumb question, but do you have to unzip it, or will the GameShell handle a zip like a directory?

I’m also having issues where the app can’t load (always crashes, goes to main menu). I followed parts of this walkthrough, then realized the zip inside PICO-8 should work, and now I’m uncertain what elements could be causing this issue from either operations.

I’ve been going through the SSH command line and have edited some of the common files that are being brought up in this thread. Below are the contents.

Files within the ‘launcher/Menu/GameShell’ directory

~/launcher/Menu/GameShell/50_PICO-8/pico-8/ ls
config.txt log.txt sdl_controllers.txt


// :: Video Settings
window_size = 320 240
screen_size = 320 240


cd /home/cpi/games/PICO-8/pico-8
SDL_VIDEODRIVER=xll DISPLAY=:0 ./pico8_dyn =splore -draw-rect 32,0,256,240

Within the PICO-8 folder in ‘games’

~/games/PICO-8/ ls
15133.p8.png  pico-8

~/games/PICO-8/pico-8/ ls
lexaloffle-pico8.png  license.txt  pico8  pico8.dat  pico8_dyn  pico8.txt

It would be helpful if the instructions could explain why we do certain operations rather than only what since it makes troubleshooting much harder. For instance, no tutorial mentions where exactly the pico-8 folder and contents are supposed to live.

EDIT: the user @hpcodecraft provided some information in another thread that resolved my issue:

I had the same issue and solved it like this:

The launcher script for pico-8 contains this line
cd /home/cpi/games/PICO-8/pico-8

From there it tries to launch the actual pico8 binary. So all I had to do was to unzip the pico-8 archive (again - I had it running before and have no idea why it vanished):

cd ~/games/PICO-8

This created the pico-8 folder the launcher wants and voila, it runs again.

Additional tip: If you link your carts folder to ~/games/PICO-8 , you can upload carts via WinSCP or the file browser. To do that, run this command: ln -s ~/.lexaloffle/pico-8/carts/ ~/games/PICO-8/carts

Hope that helps!

Hi all, I don’t know what I’m doing wrong, but I followed this guide all the way till this step, and when I click on the PICO-8 icon, It still tells me that I have purchase the PICO-8 although I already did, it’s driving me crazy…

Someone pls help me… =(

1 Like


I’ve been trying to upload some carts onto my GameShell, and this directory doesn’t seem to exist in my device:

I was wondering if you would have any idea of what other directory I would have to upload my carts to.


Did you put the raspberry pi zip file in the games/PICO-8 folder?

The directory exists. It’s just not normally visible since its name starts with a period. SSH into the GameShell and enter the following:

cd ~/.lexaloffle/pico-8/carts


You are trying to install the newest version of PICO8.
Try to update launcher and check If you have your versions of PICO8 inside this file or just replace that file with versions from GitHub

Open compkginfo.json in any text editor and replace content with that:

"NotFoundMsg":["Please purchase the PICO-8 \n|None|varela16",
"and copy it to the \"~/games/PICO-8\"|None|varela16"],
"MD5":{"":"a3f2995cf117499f880bd964d6a0e1f2","":"6726141c784afd4a41be6b7414c1b932","":"08eda95570e63089a2b9f5531503431e","":"1a62b0d7d4e4be65f89f23ec9757cb66","":"whatever it takes"},

The problem could be that your file doesn’t contain line with

1 Like

Yes. I kinda figured it out by myself but thank you so much for replying.

Thank you for the walk through! I got PICO8 up and running, start and select are working, but ABXY are not. Rebooting the Gameshell doesn’t seem to fix anything. Any thoughts?