Skip to content
Snippets Groups Projects

main/postmarketos-install-recommends: new aport

Merged Alexey Minnekhanov requested to merge alexeymin/install-recommends into master
All threads resolved!

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.

Edited by Alexey Minnekhanov

Merge request reports

Merge request pipeline #214325 passed

Merge request pipeline passed for 745fd9d3

Approved by

Merged by Alexey MinnekhanovAlexey Minnekhanov 2 months ago (Jan 27, 2025 10:39am UTC)

Merge details

  • Changes merged into master with 745fd9d3.
  • Deleted the source branch.

Pipeline #214380 passed

Pipeline passed for 745fd9d3 on master

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Alexey Minnekhanov changed the description

    changed the description

  • "Migrated" this mr from old repo.

  • added 44 commits

    Compare with previous version

  • added 9 commits

    Compare with previous version

  • Alexey Minnekhanov added 133 commits

    added 133 commits

    Compare with previous version

  • added 31 commits

    Compare with previous version

  • Alexey Minnekhanov added 133 commits

    added 133 commits

    Compare with previous version

  • added 15 commits

    Compare with previous version

  • Newbyte
    • 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 and apk 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)

  • Alexey Minnekhanov added 323 commits

    added 323 commits

    Compare with previous version

  • added 36 commits

    Compare with previous version

  • added 18 commits

    Compare with previous version

  • Alexey Minnekhanov resolved all threads

    resolved all threads

  • Alexey Minnekhanov changed the description

    changed the description

  • added 22 commits

    Compare with previous version

  • added 15 commits

    Compare with previous version

  • Alexey Minnekhanov marked this merge request as ready

    marked this merge request as ready

  • Alexey Minnekhanov changed the description

    changed the description

  • Alexey Minnekhanov resolved all threads

    resolved all threads

  • 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
  • added 1 commit

    • bfae540e - main/postmarketos-install-recommends: new aport

    Compare with previous version

  • Alexey Minnekhanov resolved all threads

    resolved all threads

  • added 1 commit

    • ee8fc323 - main/postmarketos-install-recommends: new aport

    Compare with previous version

  • Alexey Minnekhanov resolved all threads

    resolved all threads

  • added 1 commit

    • 2cdbaa6b - main/postmarketos-install-recommends: new aport

    Compare with previous version

  • added 1 commit

    • e5975d6a - main/postmarketos-install-recommends: new aport

    Compare with previous version

  • Newbyte approved this merge request

    approved this merge request

  • added 11 commits

    Compare with previous version

  • Aster Boese approved this merge request

    approved this merge request

  • added 2 commits

    • 6005bc9e - 1 commit from branch master
    • 745fd9d3 - main/postmarketos-install-recommends: new aport (MR 5697)

    Compare with previous version

  • Please register or sign in to reply
    Loading