sargo-temp/README.md

185 lines
7 KiB
Markdown
Raw Normal View History

2024-07-16 17:44:34 +00:00
# sargo-temp
2024-07-16 23:17:32 +00:00
Temporary fixes that make Mobian work on sargo.
## If you've previously used the instructions from this repo
If you've previously used the instructions from this repo, you should do the following:
- Migrate to the official Mobian kernel packages so you get updates without manually compiling new kernel versions all the time
- Apply my workaround script to get rid of workarounds that are now obsolete
- Note that call audio is still missing in Mobian for the Pixel 3a, for now you can just keep using the audio workarounds from here until the Mobian Project has a better solution
### Migrating to the official Mobian kernel package
If you have previously used a self-compiled kernel, you might want to switch to the kernel provided by the Mobian project:
```
apt update
apt install sdm670-support
reboot
```
This should also be far more stable than the last version that I pushed to my temporary repo. :D
2024-07-16 23:17:32 +00:00
### Build Image
The sdm670-specific kernel is now available from the Mobian repos, it is no longer necessarily to build it yourself.
The image can now be built as follows:
```
git clone https://salsa.debian.org/Mobian-team/mobian-recipes.git
cd mobian-recipes
git checkout wip/tiol/sdm670images
./build.sh -t sdm670 -s -u mobian -c -R myverysecretlukspassphrase | tee mobian-build.log # -s for SSH, which we need later
```
Do not use `myverysecretlukspassphrase` as your passphrase and replace it, obviously. :D
For now you'll still need the workarounds in this repo to get call audio to work.
2024-07-16 23:17:32 +00:00
2025-01-06 16:46:21 +00:00
Please note that the image will contain SSH Host Keys, please do not share it for security reasons.
2024-07-16 23:17:32 +00:00
### Flash image
First flash the image. Boot the phone.
Connect via SSH: `ssh mobian@10.66.0.1`
Accept the host key.
2024-08-22 23:04:11 +00:00
Note: If you built the image with a different username, you will have to set that in `ansible/ansible.cfg`.
2024-07-16 23:17:32 +00:00
### Roll out workarounds using Ansible
You have to have `ansible-playbook` installed.
Go to the Ansible folder: `cd ansible`
Roll out workarounds: `./workarounds.sh`
Reboot phone via SSH.
Connect to wifi.
Rolling out the workarounds for audio requires installing packages from the repo, so we need an internet connection.
Roll out audio workarounds: `./audio.sh`
2024-08-23 22:44:42 +00:00
Note:
- You might have to switch SIM slots if your SIM card is not recognised.
- Command: `mmcli -m any --set-primary-sim-slot=1`, options are `1` or `2`
2024-08-23 22:44:42 +00:00
- Watch the RSS feed for this repo to learn when there is something new:
- Feed: https://git.erebion.eu/forgejo/erebion/sargo-temp.rss
## What to do
2024-07-16 23:17:32 +00:00
## Project Status
### Issues on Debian Salsa
Various issues can be found on Salsa: https://salsa.debian.org/Mobian-team/devices/kernels/qcom-linux/-/issues/?sort=created_date&state=opened&search=sargo%2Fbonito&first_page_size=20
2024-08-13 22:39:27 +00:00
### To Do List
2024-08-20 23:49:02 +00:00
- Make installer images work on this device
- Have droid-juicer run on installer images
- Solve call audio (this repo contains a script that builds packages of Tinyalsa and q6voiced and installs those, but this is not the solution that Mobian will adopt)
2024-08-13 22:39:27 +00:00
#### Issues To Solve To Get Official Mobian Images
To Do:
- Wait for the Merge Request that adds the buld to CI to get merged
2024-08-13 22:39:27 +00:00
2024-08-21 14:21:17 +00:00
Done:
- New release of qcom-phone-utils required so that my patches are available from the repo
- https://salsa.debian.org/DebianOnMobile-team/qcom-phone-utils/-/commit/4f77281197c6ba1cfc1a82596157d00e8a7e014b (firmware folders)
- https://salsa.debian.org/DebianOnMobile-team/qcom-phone-utils/-/commit/9aa29a1d0bd2327e9c74317d516a8aeecf820304 (fixes bootimg generation with LUKS)
- https://salsa.debian.org/DebianOnMobile-team/qcom-phone-utils/-/commit/3ddb192b5c78b444065f23647b373ad66ce3617d (fixes on-screen keyboard for LUKS passphrase)
2024-08-31 23:29:54 +00:00
- Remove hard-coded value in the `droid-juicer` systemd unit
- https://gitlab.com/mobian1/droid-juicer/-/issues/4
- Make sure my `q6voiced` package no longer includes a hard-coded config for this device (known solution, need to implement)
- add udev rule for the vibration motor to the right package
- https://salsa.debian.org/Mobian-team/devices/kernels/qcom-linux/-/issues/3
- upstream: https://source.puri.sm/Librem5/feedbackd/-/merge_requests/139
- Wireplumber config
- https://salsa.debian.org/DebianOnMobile-team/qcom-phone-utils/-/merge_requests/6
- sdm670 Kernel
2024-08-21 14:21:17 +00:00
For those I will remove the workarounds once the changes are in the Mobian repo
2024-08-13 22:39:27 +00:00
#### Misc Issues
- ALSA config for the device has not been upstreamed yet (can be added using the Playbook in this repo)
- Some people have issues connecting to 5 GHz wifi and/or dual 2.4 GHz/5 GHz wifi, while for others this works perfectly fine
2024-08-31 11:25:02 +00:00
- https://salsa.debian.org/Mobian-team/devices/kernels/qcom-linux/-/issues/6
- Can be worked around by forcing the phone to only use the 2.4 GHz band, for example using `nmtui`, the network settings of GNOME/Phosh are bit too simplistic for that
- Currently no way to switch cameras, only one is usable at a time, requires change in Wireplumber
- https://gitlab.freedesktop.org/pipewire/wireplumber/-/merge_requests/670 <- someone is working on that
- Currently camera is fixed to the closest focus with no way to set photos, so you can only take macro photos :D
2024-08-13 22:39:27 +00:00
Solved:
2024-08-13 22:39:27 +00:00
- Bug in Pipewire that causes issues with the camera: https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/4227
2024-08-22 23:04:11 +00:00
- create/find script/tool that brings up Bluetooth & then package it
2024-08-31 11:25:02 +00:00
- https://salsa.debian.org/Mobian-team/devices/kernels/qcom-linux/-/issues/5
(This is a non-exhaustive list)
2024-08-13 22:39:27 +00:00
2024-07-16 23:17:32 +00:00
### This Works
- booting
- display
- touch
- modem
2024-07-16 23:17:32 +00:00
- plymouth
- battery/charging
- SMS
2024-07-16 23:17:32 +00:00
- mobile data
- wifi
- torch
- suspend
- call audio
2024-08-08 11:46:19 +00:00
- vibration
- Bluetooth™
2024-08-23 22:44:42 +00:00
- full disk encryption
- eSIM (provisioning tool not yet packaged and has to be compiled and installed manually)
2024-08-20 23:49:02 +00:00
- audio (ALSA config not packaged, but can be manually added using the playbook in this repo)
- camera (currently only one camera works at a time, image quality is still not anywhere near Android, driver is work in progress)
2024-07-16 23:17:32 +00:00
2024-08-13 22:39:27 +00:00
### This Has An Unknown Status
- Fingerprint Sensor (idk?)
- NFC (should work, does so on pmOS, but untested)
2024-08-13 22:39:27 +00:00
### This Does Not Work Yet (Soon™)
2024-07-16 23:17:32 +00:00
2024-08-23 22:44:42 +00:00
- GPS
2024-08-20 23:49:02 +00:00
- USB host mode (no Kernel support yet, but apparently this is being worked on)
- Verified Boot (first need to do research whether this is actually feasible)
2024-07-16 23:17:32 +00:00
### This Is Missing And Will Come Later
- accelerometer
- magnetometer
- ambient light sensor
- barometer
### The Sources (Use The Source, Luke)
- `mobian-recipes`, which is used to build images: https://salsa.debian.org/Mobian-team/mobian-recipes
2024-08-22 23:04:11 +00:00
- `droid-juicer`, which retrieves some important files, such as firmware, from some partitions: https://gitlab.com/mobian1/droid-juicer
2024-08-08 11:46:19 +00:00
- postmarketOS wiki: https://wiki.postmarketos.org (lovely folks, thanks for sharing everything you found out the hard way :D)
2024-07-16 23:17:32 +00:00
### Thanks For All The Fish
2024-08-13 22:39:27 +00:00
Huge thanks to be sdm670-linux project and flamingradian who did and still does an awful lot of work to make sure the Kernel works on those devices! :)
2024-07-16 23:17:32 +00:00
I dont know how Kernel development works, so I would have never started porting without this project.
Find that here: https://gitlab.com/sdm670-mainline/linux