OESF Portables Forum
Model Specific Forums => Sharp Zaurus => Zaurus - Void Linux support => Topic started by: greguu on May 05, 2018, 07:42:55 am
-
This is a reference guide on how to install Void Linux (armv5tel-musl) on a Sharp Zaurus (C3x00) device.
Please use at your own risk.
Note: C1000 (Akita) is not officially supported, but instructions for Akita are nearly identical. Please use the "Frankenstein" kexecboot kernel and ext3 as rootfs for Akita
01. Install kexecboot kernel
A kexecboot kernel is required to boot Void Linux on your Zaurus. If you do not have already a kexecboot kernel installed, get one from the sources below and follow the instructions.
C3x00 : Download (https://github.com/greguu/voidz-packages-old/releases/download/build-005/zImage-4.14.18-kexecboot.tar.xz) (Kexecboot 4.14.18 Voidz)
C3x00 : Download (https://github.com/greguu/linux-3.10.y-c3x00-f2fs-kexec-r0/releases/download/r0/linux-3.10.y-c3x00-f2fs-kexec-r0.tar.gz) (Kexecboot 3.10 ALARMZ)
C1000 : Download (https://github.com/greguu/linux-3.10.y-c3x00-f2fs-kexec-r0/releases/download/r0/linux-2.6.26-c1000-frankenstein.tar.gz)
1. Extract the tar.gz file to a FAT formatted SD or CF card (SD recommended)
2. Remove battery and power adapter cable
3. Wait for a few seconds
4. Replace battery, close and lock the battery cover
5. Attach power cable
6. Push the OK button while pressing on/off switch
7. The device will enter a menu (Japanese)
8. From the menu options choose option "4" (Update), next "2" (SD) and confirm "Y"
8. The device will reboot an present you with a boot-menu
02. Get the root file system
Note: The rootfs is updated regularly and very much experimental at this stage. Each build will feature a build number, eg Build-002. Please use always the latest build available for a fresh install.
Cxx00: Download (https://github.com/greguu/voidz-packages/releases)
Changes (build7) :
- Linux Kernel 4.19.0 - All packages build with GCC 8.2.0
To install the Void Linux rootfs, please follow the instructions below:
02.1. Format a SD memory card with f2fs or ext4 - make sure to set the correct device
mkfs.f2fs /dev/sdx1
mkfs.ext4 /dev/sdc1 -O^metadata_csum
mkfs.ext4 /dev/mmcblk0p1 -O^metadata_csum
Note: If using e2fsprogs version >=1.43.9 you will need to exclude the metadata checksum feature upon creation as shown above otherwise the kexecboot kernel will fail to mount it. Keeping the feature enabled (default with newer e2fsprogs) will likely slow things down on the Zaurus.
02.2. Extract the downloaded rootfs tar.xz onto the SD card using the tar command, umount and boot the SD card on the Zaurus.
mount /dev/sdx1 /mnt
cd mnt
tar xf /root/void-somelongnameanddate.tar.xz
02.3. Logon as root (default password is "voidlinux") and change root password via the "passwd" command.
passwd
4. Edit /etc/rc.conf and adjust your timezone. (vi or nano)
nano /etc/rc.conf
Note: Leave HOSTNAME and HARDWARECLOCK commented out.
5. Enable dropbear (sshd), udhcpc, ntpd and alsa
ln -s /etc/sv/busybox-ntpd /var/service
ln -s /etc/sv/busybox-udhcpc /var/service
ln -s /etc/sv/dropbear /var/service
ln -s /etc/sv/alsa /var/service
Note: This should bring up ethernet (CF or USB) via dhcp automatically and set the correct time as well as enable ssh listening on port 22 as default.
6. Enable WiFi
Make sure the CF or USB WiFi device is connected.
If you have a prism based card, it may be required to blacklist the orinoco_cs module fist. Reboot or "rmmod" the orinoco modules.
echo "blacklist orinoco_cs" > /etc/modprobe.d/blacklist.conf
Then setup you WiFi connection. The example is for WPA enabled networks:
ip link show
ip link set up <device_name>
wpa_passphrase <MYSSID> <key> >> /etc/wpa_supplicant/wpa_supplicant-<device_name>.conf
iwconfig <device_name> mode managed
wpa_supplicant -B -i <device_name> -c /etc/wpa_supplicant/wpa_supplicant-<device_name>.conf -Dwext
udhcpc -i <device_name>
ping google.com
Note: An automated WiFi setup on boot can be achieved by using wpa_actiond. This needs to be documented and tested. The above commands were confirmed working with prism based CF card DLINK DWL-660W on WPA2 enabled networks. (Firmware 1.8.2)
7. Set up audio (alsa)
To enable sound output, unmute the headphone or speaker channels via alsamixer and store the settings afterwards. Play a sound file to test.
alsamixer
alsactl store
aplay toptune.ogg
8. Set up the package feed
Note: This is an experimental feed that contains packages for build7. If you installed a previous rootfs, you can upgrade to build7 using xbps-install!
echo 'repository=https://www.oesf.org/repository/feeds/voidlinux/testing/build8' > /etc/xbps.d/00-repository-main.conf
xbps-install -Su
9. Start using Void.
https://wiki.voidlinux.eu/ (https://wiki.voidlinux.eu/)
Note: Void for Zaurus (voidz) is very basic at this stage does not feature any graphical desktop.
THIS GUIDE IS WORK IN PROGRESS AND NOT COMPLETE. ANY ISSUES OR QUESTIONS RELATED TO VOID INSTALLATION, PLEASE POST BELOW. THANKS.
-
As pointed out by the user C1000 on IRC, the following link is now broken:
C3x00 : Download (Kexecboot 4.14.18 Voidz)
https://github.com/greguu/voidz-packages/re...execboot.tar.xz (https://github.com/greguu/voidz-packages/releases/download/build-005/zImage-4.14.18-kexecboot.tar.xz)
Varti
-
Thanks, this has been fixed.
C3x00
https://github.com/greguu/voidz-packages-ol...execboot.tar.xz (https://github.com/greguu/voidz-packages-old/releases/download/build-005/zImage-4.14.18-kexecboot.tar.xz)
C1000
https://github.com/greguu/linux-3.10.y-c3x0...kenstein.tar.gz (https://github.com/greguu/linux-3.10.y-c3x00-f2fs-kexec-r0/releases/download/r0/linux-2.6.26-c1000-frankenstein.tar.gz)
-
FYI: RootFS and package feed have been updated to build8.
-
The void linux wiki homepage has changed:
https://wiki.voidlinux.org/Main_Page (https://wiki.voidlinux.org/Main_Page)
-
The void linux wiki homepage has changed:
https://wiki.voidlinux.org/Main_Page (https://wiki.voidlinux.org/Main_Page)
Google still lists the old wiki pages on voidlinux.eu, but the domain has been taken over by another person, unrelated to the Void project. The new voidlinux.eu seems to be a generic promotional blog for Linux in spanish...
Too bad they have not put the old forum back online, there used to be some useful information there, now it seems they have moved to Reddit.
Varti
-
The Kexecboot 4.14.18 Voidz doesn't work on my C3100, while the Kexecboot 3.10 ALARMZ works well.
-
The Kexecboot 4.14.18 Voidz doesn't work on my C3100, while the Kexecboot 3.10 ALARMZ works well.
Is it showing any error, or does it fail to find the OS? Both kexecs work without problems on my C1000.
Varti
-
The Kexecboot 4.14.18 Voidz doesn't work on my C3100, while the Kexecboot 3.10 ALARMZ works well.
Is it showing any error, or does it fail to find the OS? Both kexecs work without problems on my C1000.
Varti
cain2pang, the 4.14.18 voidz kexecboot kernel size is very very close to the max memory limit for the stock kernel size. does your zaurus have any bad blocks in flash ? Otherwise I can not explain it, it works fine on my C3100.
The 3.10 kernel is much smaller and does not occupy that much space.
-
Hi all,
Tried to install void, but hit some problems. I followed the instructions above quite accurately. There are two downloads, I chose void-armv5tel-musl-ROOTFS-20190214.tar.xz from https://github.com/greguu/voidz-packages/re...s/tag/build-008 (https://github.com/greguu/voidz-packages/releases/tag/build-008)
All looks fine.
Kexecboot gives me now two options in addition to the ones I had:
Void linux
Void linux - debugging
Selecting the Void linux one.
Four lines starting with F2FS-fs: can't find valid F2FS filesystem
kernel panic - not syncing.
Then pcmcia, scsi, ata are found.
sda: sda1 sda2 sda3
sd 0:0:0:0: [sda1] attached SCSI disk
<long wait>
then a line appears:
random: crg init done
Further no progress.
Any suggestions?
Kind regards,
Maarten
-
First things that comes to mind - is the SD card formatted as f2fs or ext4? The "Can't find f2fs" error suggests that you're using an ext4 one, if so, has it been created without the metadata checksum (the -O^metadata_csum parameter)?
Varti
-
Thanks for the quick reply,
is the SD card formatted as f2fs or ext4? The "Can't find f2fs" error suggests that you're using an ext4 one
Correct, I made it an ext4 partition
is the SD card formatted as f2fs or ext4? The "Can't find f2fs" error suggests that you're using an ext4 one, if so, has it been created without the metadata checksum (the -O^metadata_csum parameter)?
Yes, I used that parameter with the mkfs.ext4 command. Any way to check it?
I tried both build007 and build008 with same behaviour.
When the system seems to hang, it still responds to the enter key, and suspend also does something: Freezing user space processes.
hmmm... what could be wrong.
But the Zaurus remains a lovely little device ;-)
Maarten
-
I understood now. You need to change the boot parameters of both VoidLinux and VoidLinux-Debug on the SD card, the file is /boot/boot.cfg, from
rootfstype=f2fs
to
rootfstype=ext4
Varti
-
I understood now. You need to change the boot parameters of both VoidLinux and VoidLinux-Debug on the SD card, the file is /boot/boot.cfg, from
rootfstype=f2fs
to
rootfstype=ext4
Varti
that did it! Thanks!
I'm online now. setting up the feed etc
Maarten
-
Great! Please let us know any interesting use you'll find for your Zaurus
Varti
-
I thought it all was working well, but now I get an error with installing packages:
Certificate verification failed.
What is wrong? I thought it worked all right earlier...
Maarten
-
I thought it all was working well, but now I get an error with installing packages:
Certificate verification failed.
What is wrong? I thought it worked all right earlier...
Maarten
That error appears when either the date on your Zaurus is wrong, or the repository you're using has currently certification issues. The latter is solved by temporarily switching the repository's URL from https to http, or by changing repository:
The repositories can be changed from the default by copying the /usr/share/xbps.d/00-repository-main.conf file to /etc/xbps.d/ directory and editing the repository for example:
repository=http://alpha.us.repo.voidlinux.org/current
https://tutel.me/c/unix/questions/491888/vo...fication+failed (https://tutel.me/c/unix/questions/491888/void+linux+xbps+broke+certificate+verification+failed)
Varti
-
I thought it all was working well, but now I get an error with installing packages:
Certificate verification failed.
What is wrong? I thought it worked all right earlier...
Maarten
That error appears when either the date on your Zaurus is wrong, or the repository you're using has currently certification issues. The latter is solved by temporarily switching the repository's URL from https to http, or by changing repository:
The repositories can be changed from the default by copying the /usr/share/xbps.d/00-repository-main.conf file to /etc/xbps.d/ directory and editing the repository for example:
repository=http://alpha.us.repo.voidlinux.org/current
https://tutel.me/c/unix/questions/491888/vo...fication+failed (https://tutel.me/c/unix/questions/491888/void+linux+xbps+broke+certificate+verification+failed)
Varti
Hi,
just to clarify, the official Void repos do not have ARMv5tel packages and are not of use for Zaurus users.
If you received a certificate error for the Voidz repo that is hosted on OESF, this should be resolved now.
To set back your repo to the default Voidz one use this command*
echo 'repository=https://www.oesf.org/repository/feeds/voidlinux/testing/build8' > /etc/xbps.d/00-repository-main.conf
If there is some more demand, I may update the voidz repository again this year, but so far the voidz usage has been quite low unfortunately.
Cheers,
Greguu
-
It seems like it is working again. Thanks for the help!
Maarten
-
Dear all,
Started my Zaurus today again. voidZ is installed. But I forgot how to get the wifi running. So, I simply entered the corresponding commands in the guide. However, turns out there are a few omissions now. Maybe due to the forum move?
I guess the correct statements should be:
ip link show
ip link set up wlan0
wpa_passphrase <ssid> <passphrase> >> /etc/wpa_supplicant/wpa_supplicant-wlan0.conf
iwconfig wlan0 mode managed
wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant-wlan0.conf -Dwext
udhcpc -i wlan0
ping google.com
Where the wpa_passphrase command can be omitted if wpa_supplicant-wlan0.conf already exists
Now find out what to do with the nice zaurus...
MaBo
-
Hi MaBo and welcome back.
You're right, the instructions in the first post were not correctly converted from the old forum: for some unknown reason all the <_> tags under the _code_ tag were not displayed at all, even if they were still present in the post when editing it. It was enough to edit and save again it to make them reappear, everything should be correct now, thanks for pointing this out. I'll keep in mind this issue when fixing the remaining bugs introduced by the forum migration.
Varti
-
Hello again.
I know this is an old topic but the oesf repository (https://www.oesf.org/repository/feeds/voidlinux/testing/build8) appears to be down.
Is it possible to turn it back on please?
Thank you.
illbay
-
Sorry for not answering earlier, I have been busy these last two days... I have checked on the server, all the files appear to be still there (there are repositories for build6, build7 and build8 under testing/). The directory contents cannot be listed under a browser, but direct files download work here, e.g. https://www.oesf.org/repository/feeds/voidlinux/testing/build8/acl-2.2.53_1.armv5tel-musl.xbps
Is your voidz installation complaining that it cannot find the repository?
Varti
-
No problem. Thanks for getting back as quickly as you did.
When I do a xbps-install -Su I get this:
[*] Updating `https://www.oesf.org/repository/feeds/voidlinux/testing/build8/armv5tel-musl-repodata' ...
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
SSL_connect returned 1
ERROR: [reposync] failed to fetch file `https://www.oesf.org/repository/feeds/voidlinux/testing/build8/armv5tel-musl-repodata': Operation not permitted
I assumed that the server was down but now I look more closely it looks more like an SSL Certificate error.
My voidz linux install is unmodified.
Any ideas?
Thank you for your help.
illbay
PS: I have since worked out how to cross compile packages on an x86_64 install of void linux on a virtual machine. I am happy to post my steps here if that is something you think may be useful?
-
When I do a xbps-install -Su I get this:
[*] Updating `https://www.oesf.org/repository/feeds/voidlinux/testing/build8/armv5tel-musl-repodata' ...
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
Certificate verification failed for /O=Digital Signature Trust Co./CN=DST Root CA X3
SSL_connect returned 1
ERROR: [reposync] failed to fetch file `https://www.oesf.org/repository/feeds/voidlinux/testing/build8/armv5tel-musl-repodata': Operation not permitted
I assumed that the server was down but now I look more closely it looks more like an SSL Certificate error.
This certificate issue seems to be from voidz itself, as it probably requires an older certificate since the rootfs itself is 2 years old. You could try to force it to ignore the certificate with
sudo SSL_NO_VERIFY_PEER=true xbps-install -S xbps
as explained here:
https://www.reddit.com/r/voidlinux/comments/q31vim/certificate_verification_failed_for_odigital/
PS: I have since worked out how to cross compile packages on an x86_64 install of void linux on a virtual machine. I am happy to post my steps here if that is something you think may be useful?
Yes, any information about this will be more than welcome, for reference :)
Varti