Package Details: sensible-utils 0.0.24-1

Git Clone URL: https://aur.archlinux.org/sensible-utils.git (read-only, click to copy)
Package Base: sensible-utils
Description: Utilities for sensible alternative selection
Upstream URL: https://salsa.debian.org/debian/sensible-utils
Licenses: GPL-2.0-or-later
Conflicts: sensible-browser, sensible-browser-git, sensible-editor, sensible-editor-git, sensible-pager, sensible-pager-git, sensible-terminal, sensible-terminal-git, sensible-utils-data, sensible-utils-data-git, sensible-utils-git
Provides: sensible-browser, sensible-editor
Submitter: pcarrier
Maintainer: xiota
Last Packager: xiota
Votes: 27
Popularity: 0.000007
First Submitted: 2012-04-05 14:14 (UTC)
Last Updated: 2024-08-11 14:23 (UTC)

Dependencies (3)

Required by (4)

Sources (1)

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 Next › Last »

fbrennan commented on 2023-06-21 04:16 (UTC) (edited on 2023-06-21 04:17 (UTC) by fbrennan)

Right now this can't be installed with any AUR helpers. It can be installed with makepkg -si but that's it, and even though that might not even be technically Arch rules, because it's the AUR, it's a really bad way to do things.

Oh. I see. I don't use any AUR helper but to make lives easier I will get rid of them now for a pkgrel 5, as since no names are being squatted anymore I don't need to nerf the package on purpose then push it back.

fbrennan commented on 2023-06-21 04:14 (UTC)

Next time there is an update I will remove the prepare and the declare. The reason they are there is because I originally intended to try to release a half-working package before the AUR Trusted Users stepped in and rectified the situation, so I had that there so I could quickly add sensible-terminal once it was released. But then I discovered I couldn't even push as the main pkgname had been squatted and gave up on updating until rectified.

fbrennan commented on 2023-06-21 03:52 (UTC)

As of pkgrel 4 we no longer need to use my key. Please get Bastien's key from hkps://keyring.debian.org/ (https://keyring.debian.org/) ONLY, as ones on other keyservers are expired.

eclairevoyant commented on 2023-06-21 01:19 (UTC) (edited on 2023-06-21 01:21 (UTC) by eclairevoyant)

@gardotd426

Not sure how you "fixed" the package, fixing this from the maintainer's side should be as simple as

git checkout master
git merge --ff-only ecaca5a84c86e1ebc918d40de512a27a8f891994
git push -u origin master

If you do this on your end (without the push, obviously), build the package, then try to install sensible-utils, it works fine.

All packages already implicitly provide themselves, so the provides should not be kept. A package conflicting with itself is not how it should be done either, see https://wiki.archlinux.org/title/PKGBUILD#conflicts.

Maybe your AUR helpers are broken but I can't help there. Packages should be installed with makepkg (or rather, ideally, via devtools) and follow guidelines. AUR helpers are unsupported, if they can't figure out split packages, we shouldn't violate guidelines just to make helpers work.

I agree with other points about prepare and declare though, this PKGBUILD is a bit too clever/obfuscated for my taste. I didn't touch those though since ultimately it does not affect the quality of the resulting packages.

gardotd426 commented on 2023-06-21 00:36 (UTC)

Also @eclairevoyant, idk if you just weren't being specific enough, but @fbrennan has to keep the provides for sensible-browser, sensible-editor, sensible-pager, and sensible-terminal. Otherwise anything that depends on those (for example, devscripts) will cause this:

:: installing sensible-utils (0.0.20-3) breaks dependency 'sensible-browser' required by devscripts
:: installing sensible-utils (0.0.20-3) breaks dependency 'sensible-editor' required by devscripts

They just need to remove the sensible-utils entry from the provides and conflicts.

It also breaks installing the package itself, because when running paru -S/yay -S sensible-utils (after fixing @fbrennan's mistake with the commmits), you get:

:: unable to satisfy dependency 'sensible-browser' required by sensible-utils
:: unable to satisfy dependency 'sensible-editor' required by sensible-utils
:: unable to satisfy dependency 'sensible-pager' required by sensible-utils
:: unable to satisfy dependency 'sensible-terminal' required by sensible-utils
:: unable to satisfy dependency 'sensible-utils-data' required by sensible-utils

eclairevoyant, it seems like you know enough to know what the guidelines are, so I'm assuming either A) you just didn't make yourself clear or b) you made this comment before sensible-{pager,terminal,editor,browser} were added to this pkgbase instead of standalone.

@fbrennan, just in general this is kind of a mess for a pkgbase, with your declare -g -a stuff, your needless prepare() section (you can just delete that, you know), and a ton of other stuff.

I am the person that did the Arch port of the Regolith Desktop Environment, and I'll give you an example from my PKGBUILD of how it should be done.

Instead of using declare, you literally just put the names of each package in the PKGBUILD:

pkgname=(regolith-i3 # (regolith-i3-gaps regolith-i3-gaps-session i3-snapshot i3xrocks gnome-flashback ubiquity-slideshow-regolith)
        regolith-i3xrocks # allll the i3xrocks shit
        i3xrocks-app-launcher
        i3xrocks-battery
        i3xrocks-cpu-usage
        i3xrocks-focused-window-name
        i3xrocks-info
        i3xrocks-key-indicator
        i3xrocks-media-player
        i3xrocks-memory
        i3xrocks-net-traffic
        i3xrocks-nm-vpn
        i3xrocks-openvpn
        i3xrocks-temp
        i3xrocks-time
        i3xrocks-volume
        i3xrocks-weather
        i3xrocks-wifi
        regolith-styles # alll the styles shit
        regolith-st
        regolith-desktop-config
        remontoire-regolith)

You're actually doing MORE work to not do it that way, and it introduces opportunities for shit to get messed up.

Right now this can't be installed with any AUR helpers. It can be installed with makepkg -si but that's it, and even though that might not even be technically Arch rules, because it's the AUR, it's a really bad way to do things.

eclairevoyant commented on 2023-06-20 23:35 (UTC) (edited on 2023-06-20 23:38 (UTC) by eclairevoyant)

there is no branch, it appears to be a detached ref. aurweb doesn't allow other branches.

@fbrennan not sure if you were on master before applying, you might have to merge those changes back into master

gardotd426 commented on 2023-06-20 23:32 (UTC)

You pushed your fix depends commit to its own branch, not master. That's the problem it seems.

Checking out master and looking at the commits shows that the fix depends commit isn't there. And I had to cd into the AUR repo directory to see that I wasn't on master after cloning, I was on ecaca5a8

gardotd426 commented on 2023-06-20 23:14 (UTC)

Seems you've added a commit which isn't on a main branch or something else like that:

:: (1/1) Downloaded PKGBUILD: sensible-utils
 -> error merging /home/matt/tmp/sensible-utils: fatal: No current branch.

eclairevoyant commented on 2023-06-19 13:54 (UTC)

It still seems a bit off: dependencies should be listed in .SRCINFO for the editor/browser/pager/terminal packages.

I'm not sure if you're using something like makepkg --printsrcinfo > .SRCINFO, if you are I would suggest just moving the depends stuff to the package_* functions instead of the cleverness on lines 53-54 - that's probably what's tripping up printsrcinfo.

Suggested patch here, I also added a .gitignore and removed unused files. It can be applied directly with git am [path/to/patch]: https://gist.github.com/eclairevoyant/5a3f7f62d7d8880a90a92774f4ae52de

fbrennan commented on 2023-06-19 13:21 (UTC)

Done in pkgrel 2, as the -old and -unified packages no longer exist this is no longer an issue.