main/postmarketos-install-recommends: new aport
This does what you think it does.
The design is very human, you run install-recommends postmarketos-ui-phosh
and that's it.
Supports uninstalling as well (-u
) and verbose argument (-v
). All in one simple python script with only runtime dependency on git (to clone pmaports repo).
Example usage, you're on console or fbkeyboard UI and what to try phosh:
$ sudo apk add postmarketos-ui-phosh
...
$ install-recommends -v postmarketos-ui-phosh
You are on OS version: edge, using branch: master
Already on 'master'
Your branch is up to date with 'origin/master'.
Will run: sudo apk add -i calls chatty mobile-config-firefox phosh-mobile-settings portfolio postmarketos-default-camera postmarketos-tweaks postmarketos-welcome postprocessd ttyescape firefox-esr flatpak font-noto font-noto-emoji gnome-calculator gnome-calendar gnome-clocks gnome-console gnome-contacts gnome-maps gnome-software gnome-software-plugin-apk gnome-text-editor gnome-weather lollypop loupe papers
The following NEW packages will be installed:
alpine-appstream-downloader apk-polkit-rs axc callaudiocli callaudiod calls chatty cjson confuse cyrus-sasl cyrus-sasl-openrc dbus-glib ffmpeg-libavformat ffmpeg-libswscale firefox-esr flashrom-libs flatpak flatpak-libs flatpak-polkit folks font-noto
font-noto-common font-noto-emoji font-noto-math font-noto-symbols fwupd fwupd-openrc fwupd-polkit fwupd-udev gfbgraph gjs glycin-loaders gnome-calculator gnome-calendar gnome-clocks gnome-console gnome-contacts gnome-maps gnome-software gnome-software-lib
gnome-software-plugin-apk gnome-software-plugin-flatpak gnome-text-editor gnome-weather gom gst-plugins-good gtksourceview5 heimdal-libs hkdm hwloc kbd kbd-misc kbd-openrc libavc1394 libbluray libcbor libdv libeditorconfig libftdi1 libgee libgfortran libheif
libidn libiec61883 libimagequant libjcat libomemo libopencv_calib3d libopencv_core libopencv_dnn libopencv_features2d libopencv_flann libopencv_imgcodecs libopencv_imgproc libopencv_photo libopencv_video libopencv_videoio libopencv_videostab libopenmpt
libpeas libpurple libqrencode libraw librist libshout libshumate libsignal-protocol-c libsodium libsoup libsrt libssh libtag libzmq lm-sensors-libs lollypop loupe mbedtls mmsd-tng mobile-config-firefox mozjs115 mpc1 mpg123-libs mxml olm onetbb openblas
opencore-amr ostree papers papers-libs papers-nautilus phosh-mobile-settings portfolio postmarketos-base-ui-flatpak postmarketos-default-camera postmarketos-tweaks postmarketos-tweaks-phosh postmarketos-welcome postprocessd purple-carbons purple-lurch
purple-xmpp purple-xmpp-http-upload py3-anyio py3-anyio-pyc py3-cairo py3-cairo-pyc py3-certifi py3-certifi-pyc py3-charset-normalizer py3-charset-normalizer-pyc py3-curio py3-curio-pyc py3-gettext py3-gettext-pyc py3-gst py3-h11 py3-h11-pyc py3-httpcore
py3-httpcore-pyc py3-httpx py3-httpx-pyc py3-idna py3-idna-pyc py3-pillow py3-pillow-pyc py3-pylast py3-pylast-pyc py3-requests py3-requests-pyc py3-sniffio py3-sniffio-pyc py3-urllib3 py3-urllib3-pyc rest sdbus-cpp sofia-sip speex telepathy-glib
tpm2-tss-esys tpm2-tss-mu tpm2-tss-sys ttyescape ttyescape-openrc v4l-utils-libs vte3-gtk4 waked waked-openrc wavpack-libs
Need to download 120 MiB of packages.
After this operation, 402 MiB of additional disk space will be used.
TODOs were moved to issues of the project repo.
Merge request reports
Activity
added type::feature label
- Resolved by Alexey Minnekhanov
- Resolved by Alexey Minnekhanov
- Resolved by Alexey Minnekhanov
added 44 commits
-
1f56651b...378cbbb2 - 43 commits from branch
master
- 471e4c9e - main/postmarketos-install-recommends: new aport
-
1f56651b...378cbbb2 - 43 commits from branch
added 9 commits
-
471e4c9e...a83466f5 - 8 commits from branch
master
- caa4c6fd - main/postmarketos-install-recommends: new aport
-
471e4c9e...a83466f5 - 8 commits from branch
added 133 commits
-
caa4c6fd...96d54421 - 132 commits from branch
master
- 4a9ea89e - main/postmarketos-install-recommends: new aport
-
caa4c6fd...96d54421 - 132 commits from branch
added 31 commits
-
4a9ea89e...a904211c - 30 commits from branch
master
- c0152e3c - main/postmarketos-install-recommends: new aport
-
4a9ea89e...a904211c - 30 commits from branch
added 133 commits
-
c0152e3c...1b83a764 - 132 commits from branch
master
- ee3671de - main/postmarketos-install-recommends: new aport
-
c0152e3c...1b83a764 - 132 commits from branch
added 15 commits
-
ee3671de...854b37b9 - 14 commits from branch
master
- 9ecc71d8 - main/postmarketos-install-recommends: new aport
-
ee3671de...854b37b9 - 14 commits from branch
- Resolved by Alexey Minnekhanov
- Resolved by Alexey Minnekhanov
Personally, I think this probably is fine for an initial version. It's not a preinstalled core program, so it doesn't have to live up to any particular quality standard per se.
- Resolved by Alexey Minnekhanov
I still don't know which purpose this would solve. It feels like a workaround for the workaround (
_pmb_recommends
).The problem I see with the current
_pmb_recommends
approuch, is that changes are not commited on existing installations.With this MR i see a lot of drawbacks, for example does the user manually have to run the command and even specify the packages in which the
_pmb_recommends
lives. No end user should really care about that.One idea would be to install an apk trigger, check for all(?) packages their
_pmb_recommends
variable andapk add
them. But also this is really dirty. Maybe we can store_pmb_recommends
in the APKINDEX.In an ideal world we could have opt-out dependencies (maybe also known as optional dependencies or recommended packages) in apk-tools. https://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/10722 (i should probably come up with a proper design for it)
- Resolved by Alexey Minnekhanov
added 323 commits
-
9ecc71d8...ca2d4eb0 - 322 commits from branch
master
- 832f0eb2 - main/postmarketos-install-recommends: new aport
-
9ecc71d8...ca2d4eb0 - 322 commits from branch
added 36 commits
-
832f0eb2...d45ee55f - 35 commits from branch
master
- e0d54dc0 - main/postmarketos-install-recommends: new aport
-
832f0eb2...d45ee55f - 35 commits from branch
mentioned in commit postmarketos-install-recommends@d0eb07b7
added 18 commits
-
e0d54dc0...c90592c9 - 17 commits from branch
master
- 890e42be - main/postmarketos-install-recommends: new aport
-
e0d54dc0...c90592c9 - 17 commits from branch
- Resolved by Alexey Minnekhanov
Switched to use script from dedicated repository - https://gitlab.postmarketos.org/postmarketOS/postmarketos-install-recommends
Draft until re-tested once again
added 22 commits
-
890e42be...099ecb99 - 21 commits from branch
master
- 3ee7f3a8 - main/postmarketos-install-recommends: new aport
-
890e42be...099ecb99 - 21 commits from branch
added 15 commits
-
3ee7f3a8...23bb4cf1 - 14 commits from branch
master
- 011e993b - main/postmarketos-install-recommends: new aport
-
3ee7f3a8...23bb4cf1 - 14 commits from branch
MR is now ready. Test plan for anyone who wishes to try it out in qemu would be something like this:
- check out this branch
pmbootstrap build --force --strict --arch x86_64 postmarketos-install-recommends
pmbootstrap config device qemu-amd64
pmbootstrap config kernel edge
pmbootstrap config ui console
pmbootstrap config systemd never
pmbootstrap -y zap && pmbootstrap install --add postmarketos-install-recommends
pmbootstrap qemu --audio pa --memory 2048
- inside qemu window: login as user, run
sudo apk add postmarketos-ui-phosh && install-recommends postmarketos-ui-phosh
- inside qemu window run:
sudo rc-update add tinydm default
- inside qemu window run:
sudo tinydm-set-session -f -s /usr/share/wayland-sessions/phosh.desktop && sudo reboot
- after reboot see all (or at least most) apps are present
Edited by Alexey Minnekhanov- Resolved by Alexey Minnekhanov
- Resolved by Alexey Minnekhanov
added 1 commit
- bfae540e - main/postmarketos-install-recommends: new aport
- Resolved by Alexey Minnekhanov
added 1 commit
- ee8fc323 - main/postmarketos-install-recommends: new aport
added 1 commit
- 2cdbaa6b - main/postmarketos-install-recommends: new aport
added 1 commit
- e5975d6a - main/postmarketos-install-recommends: new aport
added 11 commits
-
e5975d6a...667d8dd2 - 10 commits from branch
master
- 851314f8 - main/postmarketos-install-recommends: new aport (MR 5697)
-
e5975d6a...667d8dd2 - 10 commits from branch