| img | ||
| .gitignore | ||
| debian-riscv64.yaml | ||
| LICENSE-apache.txt | ||
| README.md | ||
Mobian on DC-ROMA RISC-V Pad II
Notes on getting Mobian running on the Deepcomputing DC-ROMA RISC-V Pad II.
Status
IT IS ALIVE!
Deepcomputing
- https://deepcomputing.io/product/dc-roma-risc-v-pad-ii/
- https://store.deepcomputing.io/products/dc-roma-risc-v-pad-ii-for-native-app-development
- https://deepcomputing.io/deepcomputing-announces-the-launch-of-the-dc-roma-risc-v-pad-ii/
- https://github.com/DC-DeepComputing/DC-ROMA_Pad_II_RV-P1B
- https://github.com/DC-DeepComputing/DC-linux
Mobian
- https://mobian.org/
- https://wiki.debian.org/Mobian/
- https://wiki.debian.org/Teams/Mobian/DevelopersGuide
- https://github.com/go-debos/debos
- https://salsa.debian.org/Mobian-team/mobian-recipes
- https://salsa.debian.org/Mobian-team/devices
- https://salsa.debian.org/DebianOnMobile-team/mobile-tweaks
- https://wiki.debian.org/Teams/Mobian/Roadmap
- https://salsa.debian.org/Mobian-team/
- https://packages.mobian.org/
Spacemit
The device has 8x Spacemit X60 CPUs.
- https://www.spacemit.com/en/
- https://www.spacemit.com/en/spacemit-x60-core/
- https://bianbu-linux.spacemit.com/en/
- https://github.com/space-mit
Phosh
Phosh is in Debian sid. It works. :)
apt install phosh-full
systemctl disable gdm3
systemctl enable phosh
systemctl stop gdm3
systemctl start phosh
Need to set user roma's password to something numeric for login.
Mobian Repo
Add to /etc/apt/sources.list.d/mobian.list:
deb http://repo.mobian.org/ staging main
Can also install:
apt update
apt install mobian-phosh
Cruft
How this was put together...
- Make backups using
ddof the Debian SD card from Deepcomputing first. - Boot SD card.
- Mount the internal hard drive:
mount /dev/mmcblk2p6 /mnt mkdir /mnt/BACKUPSand move the Ubuntu system over there (or just blow it out). Just some of the directories (the ones copied below). Ephemeral directories such as/tmpdon't need to be copied. You can skip the empty ones like/srvand/opttoo.- Copy over the running system (Debian SD card) to the
/mntdirectory, replacing the old Ubuntu system:cp -a /etc /home /root /usr /var /mnt/ - Run
blkidon/dev/mmcblk2p6to get the blkid of the new root system. - Edit
/mnt/etc/fstabto update the blkid to the new one. - Same can be done for
/bootand/dev/mmcblk2p5. - Remove SD card.
- Reboot.
Build Debian
Notes that will perhaps lead to building a Debian sid RISC-V image.
# Following this repo:
git clone https://github.com/go-debos/debos
# Install dependencies
sudo apt install golang git libglib2.0-dev libostree-dev qemu-system-x86 \
qemu-user-static debootstrap systemd-container qemu-system-misc
The build script wants systemd-resolved for some reason/
# Not sure why it needs this, but complains when building if not available
# (of course it broke DNS on my build server, such is the nature of systemd):
sudo apt install systemd-resolved
# To fix systemd name resolution, edit this file:
/etc/systemd/resolved.conf
# And add a line for your nameserver, such as:
DNS=192.168.1.1
# Then reload and restart systemd:
systemctl daemon-reload
systemctl restart systemd-resolved.service
# Make sure it works:
host deb.debian.org
After fixing borken systemd, proceed thusly:
# Go stuff
mkdir -p /home/`id -un`/go
export GOPATH=/home/`id -un`/go
go install -v github.com/go-debos/debos/cmd/debos@latest
# Perhaps add ~/go/bin to $PATH
# See if it works
~/go/bin/debos --help
Create a debian-riscv64.yaml like so:
{{- $image := or .image "debian.tgz" -}}
architecture: riscv64
actions:
- action: debootstrap
suite: sid
components:
- main
mirror: https://deb.debian.org/debian
variant: minbase
- action: apt
packages: [ sudo, openssh-server, adduser, systemd-sysv ]
- action: run
chroot: true
command: echo debian > /etc/hostname
- action: pack
file: {{ $image }}
compression: gz
Build thine image:
~/go/bin/debos debian-riscv64.yaml
Build Mobian
Like building Debian above.
See example recipes for other devices here:
XXX Note, the debos in Debian bookworm doesn't work for this. It doesn't build the librem5 device either. Need to install the debos from go repo and add to $PATH. XXX
Add these deps (maybe not all needed...):
sudo apt install bmap-tools xz-utils android-sdk-libsparse-utils yq
# Maybe
sudo apt install fakemachine squashfs-tools-ng binfmt-support
Setup forked repository:
git clone https://spacecruft.org/mobian/mobian-recipes
cd mobian-recipes/
# Make sure you're on the right branch:
git checkout riscv64
# Run the build:
./build.sh -t roma-pad-ii
Kludge the image onto the device.
- For now, it can't be
dd'd to the device. - The bootloader isn't being created.
- Copy over the
rootfs-riscv64-phosh.tar.gzto the device. - Boot up from SD card.
- Move the relevant directories somewhere else.
- Untar the
rootfs-riscv64-phosh.tar.gzfile. - Copy the contents to the
/on the internal drive. - Copy over good
fstab. - User/password: mobian/1234.
License
Apache 2.0.
Unofficial project, not related to upstream projects.
Upstream sources under their respective copyrights.
Copyright © 2024 Jeff Moe.
