Github messages for voidlinux
 help / color / mirror / Atom feed
From: classabbyamp <classabbyamp@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Merged]: vpsm: remove package
Date: Mon, 17 Jun 2024 16:55:33 +0200	[thread overview]
Message-ID: <20240617145533.C33C7216DE@inbox.vuxu.org> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-49353@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 3201 bytes --]

There's a merged pull request on the void-packages repository

vpsm: remove package
https://github.com/void-linux/void-packages/pull/49353

Description:
I have created this PR because of https://www.reddit.com/r/voidlinux/comments/1bgdi51/recommend_way_to_update_xbpssrc_packages/

vpsm's latest commit has been made five years ago. I've reviewed the script, and it seems that everything is still functioning correctly. However, there's a possibility that any future changes to `xbps-src` could potentially break vpsm.

One might argue that this doesn't matter because it's not broken (yet). One could say that vpsm is feature complete and it doesn't need any updates. But it appears to me as though it has been abandoned.

vpsm isn't compiled, no packages require it and it doesn't need to be system installed. It therefore meets none of the quality requirements.

I personally hate these wrapper scripts because they do not provide any value of their own. vpsm doesn't really combine `xtools`, `xbps-src` and `git` to produce something, it just executes the appropriate commands 1:1. For example, `vpsm update-sys` = `./xbps-src update-sys`, `vpsm show-deps` = `./xbps-src show-deps`, `vpsm push-commit`
 = `git push -u` etc.

This "hides the truth" from the user. Instead of using official, documented commands, `vpsm` users are encouraged to use `vpsm` (which uses those official commands) which adds an unnecessary layer of abstraction. Using official, documented commands should be preferred in my opinion.

But it isn't always 1:1. Users of vpsm might be surprised to find out[^1] that `vpsm build-environment` uses `XBPS_CHROOT_CMD=uchroot`, which is not the default way `xbps-src` is used. vpsm does special setup for this which requires superuser privileges, but it isn't properly documented. It also sets the set user ID bit on `xbps-uchroot`, which really should be documented. All of this shouldn't even happen in the first place, because `xbps-uchroot` has the right permissions set by default.

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->

[^1]: `vpsm` echos the commands used to set up the build environment, so the user will be made aware that `XBPS_CHROOT_CMD=uchroot` is used. However, I don't see it documented anywhere. Figuring this out as the commands are being run is too late.

      parent reply	other threads:[~2024-06-17 14:55 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-18 15:54 [PR PATCH] " meator
2024-03-18 16:06 ` meator
2024-06-16 22:50 ` [PR REVIEW] " classabbyamp
2024-06-17  5:00 ` [PR PATCH] [Updated] " meator
2024-06-17  5:00 ` [PR REVIEW] " meator
2024-06-17 14:55 ` classabbyamp [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240617145533.C33C7216DE@inbox.vuxu.org \
    --to=classabbyamp@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).