Tiny Core Base > TCB Tips & Tricks
IBM ThinkPad 560Z Core Project Pentium II
linic:
Thanks Rich! Those are good points! My current boot options are
--- Code: ---APPEND vga=788 syslog showapps tce=UUID="3541ff21-9683-4df0-9ecd-a5a3fce0014c" home=UUID="3541ff21-9683-4df0-9ecd-a5a3fce0014c" opt=UUID="3541ff21-9683-4df0-9ecd-a5a3fce0014c" nozswap lang=fr_CA.UTF-8
--- End code ---
Even with those, I didn't have enough RAM to tce-load my custom tgz. I found another way to make rust and rustlings work on 560Z though.
Working with 64 MB of RAM
I got the idea of not loading my custom rust-1.71.1-i586.tgz. Before creating the tgz, I had to install rust to a folder. I decided to add the executables nested in that folder to my PATH.
--- Code: ---export PATH=/home/tc/rust-1.71.1-i586/usr/local/bin:$PATH
--- End code ---
That went well and I can now run rustc --version and cargo --version.
Getting and Trusting more Certificates
I tackled the SSL error 60 from the cargo install --force --path . preventing me to install rustlings by downloading the certificates and making my own .crt file.
--- Code: ---mkdir /home/tc/certificates
cd /home/tc/certiticates
openssl s_client -showcerts index.crates.io:443 2>&1 | sed --quiet '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > index.crates.io.all.crt
sudo cp -v index.crates.io.all.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
cd /home/tc/rustlings
cargo install --force --path .
--- End code ---
It was still failing, but then I found https://users.rust-lang.org/t/unable-to-update-my-cargo-package-ssl-error/5157/5
--- Code: ---export SSL_CERT_FILE=/usr/local/share/ca-certificates/index.crates.io.all.crt
cargo install --force --path .
--- End code ---
I got past the failed to download from https://index.crates.io/config.json error. Next, I got stuck on another SSL 60 error, but with this new URL: https://crates.io/api/v1/crates/aho-corasick/1.0.5/download
I got the certificates for crates.io
--- Code: ---cd /home/tc/certificates
openssl s_client -showcerts crates.io:443 2>&1 | sed --quiet '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > crates.io.all.crt
cp index.crates.io.all.crt cargo.all.crt
cat crates.io.all.crt >> cargo.all.crt
export SSL_CERT_FILE=/home/tc/certificates/cargo.all.crt
cd /home/tc/rustlings
cargo install --force --path .
--- End code ---
Then, I got the SSL 60 error again. So I thought, maybe I need to add it to /usr/local/share/ca-certificates/ and update-ca-certificates again...
--- Code: ---sudo cp -v /home/tc/certificates/cargo.all.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
cargo install --force --path .
--- End code ---
To my surprise I got again the same SSL 60 error... I inspected the cargo.all.crt file with less and all looked great. I did cargo install --force --path . again and then it started to work... I don't know maybe something needed some time to refresh itself...?
Installing rustlings on the 560Z with 64 MB of RAM
The install downloaded 43 creates (3.5 MB) in 48.69 seconds. There were 57 dependencies to build. It took 5 hours. After that, I had to
--- Code: ---export PATH=/home/tc/.cargo/bin:$PATH
rustlings
--- End code ---
and rustlings would display its "welcome to..." screen which fits on my 560Z screen.
I wrote a source file
--- Code: ---vi add-rust-paths.source
export PATH=/home/tc/rust-1.71.1-i586/usr/local/bin:/home/tc/.cargo/bin:$PATH
source ./add-rust-paths.source
--- End code ---
So that I can easily edit my PATH when I want to use rust and rustlings.
Going through the exercises
--- Code: ---cd /home/tc/rustlings
rustlings watch
--- End code ---
I tried an horizontal split screen in tmux (CTRL+B+"). To my surprise, this works well! My two consoles are in /home/tc/rustlings/exercises. The top one has rustlings watch running and I use the bottom one to edit the code.
Note that:
exercises/intro/intro1.rs took about 30 seconds to build.
exercises/intro/intro2.rs took about 40 seconds to build.
Thanks!
Thanks to misterpki.com for how to make a crt file from the outputs of openssl https://www.misterpki.com/openssl-s-client/
Thanks to ansible on this forum who gave me the SSL_CERT_FILE idea https://users.rust-lang.org/t/unable-to-update-my-cargo-package-ssl-error/5157/5
Thanks Jon and Thanh Nhan who refreshed my memory on how to load certificates with update-ca-certificates https://askubuntu.com/questions/935990/update-ca-certificates-0-added-0-removed-how-come
This is it for now!
linic:
I thought someone reading this thread could find this other thread useful https://forum.tinycorelinux.net/index.php/topic,27458.msg176935.html#msg176935 to upgrade to 15.0 and boot into the desktop.
Andreas881:
Wow, great job!Thanks for such a detailed writeup I think this will help a lot of people with their retro hardware.Getting through IDE and manual TCP/IP settings on such an old machine is pure dedication great that you made it work!
As for RAM, have you checked eBay or local electronics shops?Sometimes you find these gems in the "vintage" sections.Good luck and let us know how it runs in the long term :)
linic:
Hi Andreas881, I'm happy you find my work useful! Thank you :D
For people getting
--- Code: ---cs4236+ chip detected, but control port 0xffffffff is not valid
--- End code ---
with the 560z, I have published a workaround/solution
https://github.com/linic/tcl-core-560z?tab=readme-ov-file#cs4237b
https://github.com/linic/tcl-core-560z/releases/tag/6.12.11.15.9
From the github README:
--- Quote ---If you are on a quest to get sound working on the 560z, I modified the cs4236 driver and put the result in the cs4237b folder. This gets bundled in the alsa-modules-6.12.11-tinycore-560z.tcz. Tinycore 14.0 and my custom builds before 6.12.11.15.9 would give me cs4236+ chip detected, but control port 0xffffffff is not valid. It looks like a working version of a driver for the CS4237B specifically on the 560z hasn't existed for a long time. All the workarounds I found on the net didn't work for me.
The 560z uses a CS4237B sound chip. Some forum said to disable the quick boot from the bios which you can reach by hold F1 and turning on the 560z. I did that, but the control device which should have been in the list of PNP ISA devices with EISA ID CSC0010 still wasn't there. I tried a bunch of things to make it appear, but it never did. In any case, still disable the quick boot because I run with it disabled and with my modifications to the cs4236 driver sound does end up working.
I remove cport and cimage from the snd cs4236 driver. See files here 6.12.11. I also simplified and deleted code which would not run because the chip->hardware is WSS_HW_CS4237B. I clarified many variables and methods and added comments.
--- End quote ---
Benjamin81:
Great job documenting this! The ThinkPad 560Z is a real classic, so keeping it alive is worth the effort. About the IP issue after reboot – have you tried running dhclient eth0 before setting it manually? Sometimes that fixes it.
I have an old machine running Core as well, and I’ve played around with network config – DHCP can be flaky on older hardware. Checking dmesg and cat /var/log/messages might give some hints. :)
Navigation
[0] Message Index
[*] Previous page
Go to full version