Slackware inside Pyra


A quick update:
-switched to 5.10.x kernel, proper X driver + rotation is now working
-I now see all audio controls (bluetooth, tuner, etc.), but still no speaker output
-found out that some keys (at least the undescore) are missing under X despite using the same config file as PyraOS.
-dri3wsegl-pyra compiles but still no 3D
-DBP doesn't work because it uses AUFS which is not part of the kernel. Can be recompiled. Anyway at some point I may test if mergerfs could replace it because it uses FUSE and avoids compiling a kernel module: https://github.com/trapexit/mergerfs
 
Last edited:
Two more things to solve:

1- when closing the lid, it seems that the unit goes to suspend instead of shutting down the screen
2- the battery doesn't seem to charge when power is plugged in any of chargin ports
 
Having this in /etc/elogind/logind.conf seems to solve the lid issue:
Code:
HandleLidSwitch=ignore
HandleLidSwitchExternalPower=ignore
HandleLidSwitchDocked=ignore
Still the screen doesn't go off but it's better than crash the machine.
 
Xfce's battery plugin indicates that AC is off-line, but the charge percentage increases... (USB3 port is plugged)
 
Have you tried "xset dpms" to turn off the display to automatically blank the screen when not used for some time?
e.g. "xset dpms 0 0 300" to blank screen automatically after 300 sec.
 
Thanks.
Not yet, I'm wondering where is the setup located in the PyraOS. I'd like to be as close as possible.
 
I have some questions:
1- Is it possible to boot from a SD card with only one partition ?
2- If no, can the 1st partition be formatted as ext4 ?
3- Are MLO and u-boot.img mandatory on the SD card ? What are the limitations if they are not present ?
 
I have some questions:
1- Is it possible to boot from a SD card with only one partition ?
2- If no, can the 1st partition be formatted as ext4 ?
3- Are MLO and u-boot.img mandatory on the SD card ? What are the limitations if they are not present ?
yes, if the MLO and u-boot come from the internal eMMC - and if they execute a boot.scr that checks if it can load the kernel from the SD card.
Then you can also use ext4 for the partitions.
The BootROM will then try to find an MLO on the SD card but doesn't and then searches other locations, i.e. eMMC.
But I don't know what MLO and u-boot are flashed in eMMC when the Pyra is shipped and if there is a boot.scr that searches the SD card.
Basically it is very similar to how the Pandora does boot. Details of the boot process are somewhere in the OMAP5 TRM.
 
Thanks.
Wrote a PyraOS SD card, the first partition is ext2 and looks like:
Code:
$ ls -la
total 29813
drwxr-xr-x  5 root root     1024 Jun 14  2022 .
drwxr-xr-x 18 root root     4096 Jun  5 18:58 ..
-rw-r--r--  1 root root  3919995 Dec 14  2020 System.map-5.6.19-daveiii-pyradef-aufs
-rw-r--r--  1 root root   188161 Dec 14  2020 config-5.6.19-daveiii-pyradef-aufs
drwxr-xr-x  3 root root     1024 Jun 14  2022 dtb
drwxr-xr-x  2 root root     1024 Jun 14  2022 extlinux
-rw-r--r--  1 root root 19059668 Jun 14  2022 initrd.img-5.6.19-daveiii-pyradef-aufs
drwx------  2 root root    12288 Jun 14  2022 lost+found
-rwxr-xr-x  1 root root  7216800 Dec 14  2020 vmlinuz-5.6.19-daveiii-pyradef-aufs
 
No exciting news yet, I'm mostly doing a first pass on compiling packages, check builds, making proper build lists (sqf for https://sbopkg.org), etc.
So far, I got stuff like jack, audacity, evince, geany, wireshark, xournal and some more. I'll also rebuild optimized SDL2.
I'm still far from an alpha release but I take a little step towards it every day.
 
That's crazy, it seems that with some SD cards, uEnv.txt is used, and with other cards, extlinux.conf has to be present in order to boot !!!
Could it be related to brand, or first partition size ?
 
  • Wow
Reactions: rSl
Looks like the boot option "earlycon" is not friendly to every kernel, at least it hangs the boot with Letux 5.10.182-lpae.
 
Breaking news:
P6100007.JPG
 
If you noticed the two cursors: no, it's not a gimp/photoshop fake;^)
I see this from time to time, usually with Qt5 applications, and only with the "true rotation" omap5 xorg driver.

So it took me two weeks (sorry, no two months® this time) to figure out what to do in order to succeed (new rust, gcc options etc.). Building takes 1~2 days (I had to do stuff manually, re-test, so I don't know exactly) on a Pyra-like devboard.
The build is optimised for cortex-a15 + fpu + neon.
I tested it a bit and it ran flawlessly, but youtube videos don't play which is not a problem because of alternatives like smtube (https://www.smtube.org , already packaged into the Slackware rootfs build - untested, but should be ok).
It's not incredibly fast, but it's definitely not slow, and perfectly usable.

I'll release an alpha rootfs ASAP for you guys, but it will take time as I still don't know if I'll provide a binary image to dd or a zipped filesystem, and wrote nothing to do the job automatically (can't use my Pandora stuff as Pyra has two partitions, unless I figure out how to have only one partition).
For me, as of today, both dd and zip have pros and cons.
 
Thanks, that was a piece.
And there's still so much to do !!!
Hopefully some of you guys would be able to give a hand ;^)
 
  • Like
Reactions: rSl
Here's the first SL4P, Slackware for Pyra, alpha release:
http://slackware.openpandora.org/pyra/index.php?dir=sl4p/sl4p-testing

See 1st post here to see what works and what doesn't.
Note that it is an alpha release so it's not polished at all.

This release is delivered as a compressed dd image.
Verify the sha256sum, then use xz -d, unxz or 7zip to decompress the archive.
And dd it to a 16 Go or more SD card.

These three files (or at least one of them, no time to test) have to be removed from the rootfs, otherwise starting Xfce won't work:
/usr/bin/pyra_purge-quit-menu.sh
/usr/bin/pyra_first-xfce-login.sh
/usr/bin/pyra_first-start.sh

At first boot, some packages will be upgraded and it will take some time, e.g. 10 minutes.
Also, the Pyra will reboot so be patient.
There's a bug when the screen goes off under console so you'll have to touch some keys from time to time, otherwise ou may have to force a shutdown.

Then you'll get a login prompt. There's some kernel messages popping on the screen so you may want to push enter to see this login prompt.
Log in as "root", the password is "password".
Ssh is enabled by default so you may want to disable it ("/etc/rc.d/rc.sshd stop" then "chmod -x /etc/rc.d/rc.sshd").

Create a user with "adduser name_of_user". Note that the keyboard isn't fully supported, some keys/combinations aren't working so be careful with the password.
Push "up" when prompted in order to add your user in proper groups.
Log out with "exit" and log in as your user.
Then start the graphical interface with "startxfce4" and enjoy.

Sbopkg is the package manager used to build programs from sources:
https://pandorawiki.org/Software_projects/OS/Slackware#Installing_a_program_from_source
Once you've done the sync with the server, run as root (su -):
"pyra_sboflags.sh"
The packages you'll install will now be optimised for the cortex-a15.

You can refer to the SL4P Open Pandora wiki to have a basic insight about how Slackware works:
https://pandorawiki.org/Software_projects/OS/Slackware

This software is distributed as is. You are on your own responsibility when using it.

Feel free to report anything.
Feel free to help.
 
Last edited:
Back
Top