Kết nối với usb keyboard qua cổng micro-usb vì đây là Archlinux minimal distro nên tự chọn DE cài, lxdm/lxqt(lxde), xfce 4.16, xfce4 mix i3wm, gnome 40, phosh, sxmo. hkdm daemon/ttyescape/buffyboard/terminusfont, zram-init trong /home/alarm
Link download trên Google drive:
Archlinux ARMv7 latest kernel-6.x-postmarketos-grate
https://drive.google.com/drive/folders/1n4dxDfL7lyiKcC97lB0MYEbB5QuJ97Cx
Archlinux ARMv7 latest kernel-5.19.0-rc8-next-20220728-postmarketos-grate
https://drive.google.com/drive/folders/1sHqfA-CuFpSkNcwnW5NGOKlf0a4aHmj6
Link download trên Google drive:
Archlinux ARMv7 latest kernel-6.x-postmarketos-grate
https://drive.google.com/drive/folders/1n4dxDfL7lyiKcC97lB0MYEbB5QuJ97Cx
Archlinux ARMv7 latest kernel-5.19.0-rc8-next-20220728-postmarketos-grate
https://drive.google.com/drive/folders/1sHqfA-CuFpSkNcwnW5NGOKlf0a4aHmj6
Archlinux ARMv7 latest kernel-5.15.0-rc4-next-20211011-postmarketos-grate
https://drive.google.com/drive/u/0/folders/1dGFlh5SVMsgHulqkVo14hEvPEQ5LiTY8
ArchLinux ARMv7 latest f2fs rootfs kernel-5.14.0-rc3-next-20210729-grate
https://drive.google.com/drive/folders/13ja5utmNSyNiz4xKTG5qcoBqRNv9qVYw?usp=sharing
ArchLinux ARMv7 latest ext4 rootfs kernel-5.14.0-rc3-next-20210729-grate
https://drive.google.com/folderview?id=1szK5trBse8-j1hSIgzZDppL3R6ySNSCP
Cài android-tools và fastboot trên Linux/Windows
Unlock bootloader cho Nexus 7, tham khảo trên mạng
https://wiki.postmarketos.org/wiki/Google_Nexus_7_2012_(asus-grouper)
Google Nexus 7 2012 (asus-grouper) - postmarketOS
wiki.postmarketos.org
Variants
- grouper rev. PM269 - without GSM (oldest)
- grouper rev. E1565 - without GSM (modern revision)
- tilapia rev. E1565 - with GSM
Quảng cáo
Do I have grouper or tilapia?
TWRP (adb shell) $ grep androidboot.baseband=unknown /proc/cmdline && echo grouper || echo tilapia
Which hardware revision of grouper do I have?
TWRP (adb shell) $ find /sys/devices/ | grep -c max776 && echo You have E1565
TWRP (adb shell) $ find /sys/devices/ | grep -c tps6591 && echo You have PM269
Đưa máy về bootloader. Kết nối Nexus 7 2012 wifi vào PC/laptop. Chuẩn usb 1.0, 1.1, 2.0 dùng tốt. Chuẩn usb 3.0 dễ bị over cache push vào Nexus 7 2012, unsupport
$ sudo adb reboot bootloader
Quảng cáo
Flash boot image vào boot partition (đổi tên boot.img-asus-grouper thành boot.img)
$ fastboot flash boot boot.img
Cài TWRP 3.3.1-0 trở lên, vào Advance → Terminal
$ df
$ umount /dev/block/mmcblk0p__ <- fill partition number #(2 lần)
Dùng lệnh adb để bung rootfs vào mmcblk0p__ trên PC/laptop
$ sudo adb start-server
Chuyển đến thư mục chứa rootfs image
$ sudo adb push ArchLinuxARM-armv7-latest+asus-grouper.img /dev/block/mmcblk0p__ <- fill partition number
- grouper has likely data on /dev/block/mmcblk0p9 but make sure!
- tilapia has likely data on /dev/block/mmcblk0p10 but make sure!
default user alarm with the password alarm
default user su with the password root
Install dialog and wifi-menu, wpa_passphrase, wpa_supplicant, iwd on USB Internet(pmOS supported)
https://wiki.postmarketos.org/wiki/USB_Internet#iptables_.28Ubuntu.2FArch.2FAlpine.29
On, Nexus 7:
# ip route add default via 172.16.42.2
# echo nameserver 1.1.1.1 > /etc/resolv.conf
On PC/Laptop connecting usb by Nexus 7:
Fisrt, enable IP forwarding:
# sysctl net.ipv4.ip_forward=1
Then follow the instructions according to the distribution or firewall you use.
# iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
# iptables -A FORWARD -s 172.16.42.0/24 -j ACCEPT
# iptables -A POSTROUTING -t nat -j MASQUERADE -s 172.16.42.0/24
# iptables-save #Save changes
# ssh alarm@172.42.16.1
Passwd: alarm
# su
Passwd: root
# pacman-key --init
# pacman-key --populate
# pacman-key --refresh-keys
# pacman -Sy archlinux-keyring
# pacman -Syu
# pacman -S dialog wpa_supplicant iwd dhcpcd
Các utils để trong /opt gồm các scripts:
- sysctl.conf tối ưu VMs và thông số kernel
- cpufreq.start tối ưu Ondemand governor
- temp_throttle để kìm hãm con ngựa Tegra thành Troy không quá nhiệt (hơn 60 độ kernel sẽ tự khởi động lại, để 59 độ là max, ở 53 và 55 độ ổn định)
- clear_RAM để remove thêm RAM nếu cần
Grate-driver được phát triển ở đây, accelerate 2D và 3D qua Gallium(libllvm11):
https://github.com/grate-driver/
Opentegra driver GPU 2D accelerate, ArchLinux AUR
https://aur.archlinux.org/packages/xf86-video-opentegra-git/
***Fix sound ALC5642 cho tegra-rt5640***
https://help.ubuntu.com/community/SoundTroubleshooting
SoundTroubleshooting - Community Help Wiki
help.ubuntu.com
https://forum.ubuntuusers.de/topic/medion-akoya-e2228t/2/
Medion Akoya E2228t › System einrichten und verwalten › Systemverwaltung, Installation, Aktualisierung › Forum › ubuntuusers.de
forum.ubuntuusers.de
$ sudo lsmod | grep "^snd" | cut -d " " -f 1
snd_soc_tegra30_i2s
snd_soc_tegra_pcm
snd_soc_tegra_rt5640
snd_soc_tegra_utils
snd_soc_rt5640
snd_soc_rl6231
snd_soc_core
snd_soc_tegra30_ahub
snd_pcm_dmaengine
snd_pcm
snd_timer
snd
$ sudo nano /etc/modules
snd_soc_tegra30_i2s
snd_soc_tegra_pcm
snd_soc_tegra_rt5640
snd_soc_tegra_utils
snd_soc_rt5640
snd_soc_tegra30_ahub
$ reboot
Checking soc soundcard loaded:
$ pacman -Syu
$ pacman -S alsa-utils
$ sudo cat /proc/asound/card*/id
ALC5642
$ sudo alsa force-reload
$ alsamixer
Enable các thông số thiết lập (phím M hoặc phím mũi tên lên/xuống): "Speaker R" "Speaker L" "DAC MIXR INF1" "DAC MIXL INF1" "SPOL MIX DAC R1" "SPOL MIX DAC L1" "Stereo DAC MIXR DAC R1" "Stereo DAC MIXL DAC L1"
Wifi dùng wifi-menu/wpa_supplicant/iwd và network-manager
Bluetooth dùng được bluez5 và blueman
NFC dùng được với neard
Install MATE desktop for testing
# su
Passwd: root
# pacman -S xorg xorg-server llvm mate mate-extra lightdm lightdm-gtk-greeter tlp tlp-rdw zram-init iio-sensor-proxy onboard bluez blueman networkmanager network-manager-applet
Config onboard for lightdm-gtk-greeter
# su
Passwd: root
# nano /etc/lightdm/lightdm-gtk-greeter.conf
keyboard=onboard -a -l Phone -t Nightshade
Tự build grate-driver theo wiki của grate
https://github.com/grate-driver/grate/wiki/Grate-driver
Grate driver
Open source Tegra 2/3/4 2D/3D user-space developer tools - grate-driver/grate
github.com
Introducing swap to vram, fuse filesystem
https://wiki.archlinux.org/title/Swap_on_video_RAM#FUSE_filesystem
Image source build từ đây:
https://forum.xda-developers.com/t/linux-on-the-acer-iconia-tab-a500-2020-edition.4136023/post-85373009
http://tw2.mirror.archlinuxarm.org/os/ArchLinuxARM-armv7-latest.tar.gz
Cách build image cơ bản như sau:
- Tạo image unallocated 2GB: # dd if=/dev/zero of=/home/[user]/alarm.img bs=2GB count=1
- Load vào loop
# sudo losetup -f
# sudo losetup /dev/loop0 /home/[user]/alarm.img
# sudo partprobe /dev/loop0
# sudo gparted /dev/loop0
3. Tạo 2 partition:
Đánh dấu boot cho label pmOS_boot, với filesystem là ext2
Label pmOS_root, với filesystem là ext4 hoặc f2fs(phải chỉnh lại /etc/fstab là ext4 hay f2fs cho pmOS_root)
Với f2fs thì gparted không đặt label đc, phải dùng lệnh bên dưới format
# sudo mkfs.f2fs -f -l pmOS_root /dev/loop0p2
Copy boot.img, initramfs, vmlinuz, extend v.v.. vào pmOS_boot dưới quyền sudo
Copy lib/firmware/postmarketos, lib/modules, /etc, /usr/lib, /usr/share, /var/lib để nhận driver và firmware các kiểu và tất nhiên phải bung ArchLinuxARM-armv7-latest.tar.gz vào pmOS_root partition
# sudo losetup -d /dev/loop0
Tham khảo: https://forum.xda-developers.com/t/linux-on-the-nexus-7-2012-wifi-rev-e1565-grouper-2023-edition.4323099/