• Re: dh-shell-completions: simple debhelper addon to install shell compl

    From M. Zhou@21:1/5 to Blair Noctis on Sun Mar 16 20:20:01 2025
    On Sun, 2025-03-16 at 18:47 +0000, Blair Noctis wrote:

    Kind of a shameless plug, but enough people said it's useful so I thought might as well let more know.

    I'll not go into great details, because there isn't any. Just check its man page and source code:
    https://manpages.debian.org/unstable/dh-shell-completions/dh_shell_completions.1.en.html
    https://salsa.debian.org/debian/dh-shell-completions

    Thank you for this dh module! After browsing the examples, I came up with
    an old problem about these completion scripts -- whether the completions
    should be loaded by default, and whether that behavior should be synced
    among shells.

    Do you think it is useful to define some flags for
    dh_shell_completions, like --enable-by-default, --disable-by-default
    to decide whether a completion file should be enabled by default.

    I'm raising this question because I find it somewhat confusing
    because different shells do the completions and keybindings in very
    different ways. For instance, fzf: https://salsa.debian.org/go-team/packages/fzf/-/blob/master/debian/README.Debian

    As you can see, key-binding scripts are similar to completion scripts.
    Maybe they can be dealt by the same dh module as well. Generally
    key-binding scripts should not be enabled by default due to potential conflicts.

    A quick search suggests that both policy and devref do not cover
    the shell integration topic.

    An example that resembles what I'm talking about is dh_installsystemd.
    It has --no-enable, --restart-after-upgrade, --no-restart-after-upgrade,
    etc flags to control the systemd unit behavior upon dpkg actions.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Matthias Geiger@21:1/5 to All on Sun Mar 16 20:30:01 2025
    Hi all,


    Kind of a shameless plug, but enough people said it's useful so I
    thought might as well let more know.

    I'll not go into great details, because there isn't any. Just check
    its man page and source code:
    thanks to ncts for writing this. Am a very happy user of this.
    To expand a bit on the functionality:
    dh-shellcompletions automatically generates the completion files for the respective shells (if the binary has this built-in as subcommand) and
    installs in into the correct dirs.
    .
    No more d/rules hacks needed.

    best,

    werdahias

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Nicolas Peugnet@21:1/5 to Blair Noctis on Sun Mar 16 22:50:01 2025
    Hi,

    On 16/03/2025 19:47, Blair Noctis wrote:
    Kind of a shameless plug, but enough people said it's useful so I
    thought might as well let more know.

    I'll not go into great details, because there isn't any. Just check its
    man page and source code: https://manpages.debian.org/unstable/dh-shell-completions/ dh_shell_completions.1.en.html https://salsa.debian.org/debian/dh-shell-completions

    Honestly, I found about it after looking for exactly this, and it is a
    perfect match for my (yet to be released) crazy-complete package: https://salsa.debian.org/debian/crazy-complete/-/commit/4be5615207a4b8f21918240d9e2673e8c3ecd2e4

    I just wanted to say thank you for creating this.
    --
    Nicolas Peugnet

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Blair Noctis@21:1/5 to M. Zhou on Tue Mar 18 11:40:01 2025
    To: debian-devel@lists.debian.org (Debian Developers)

    This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------ToTPOOpPZCgTwoDb6gcCEdWm
    Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64

    T24gMTYvMDMvMjAyNSAxOToxMCwgTS4gWmhvdSB3cm90ZToNCj4gT24gU3VuLCAyMDI1LTAz LTE2IGF0IDE4OjQ3ICswMDAwLCBCbGFpciBOb2N0aXMgd3JvdGU6DQo+Pg0KPj4gS2luZCBv ZiBhIHNoYW1lbGVzcyBwbHVnLCBidXQgZW5vdWdoIHBlb3BsZSBzYWlkIGl0J3MgdXNlZnVs IHNvIEkgdGhvdWdodCBtaWdodCBhcyB3ZWxsIGxldCBtb3JlIGtub3cuDQo+Pg0KPj4gSSds bCBub3QgZ28gaW50byBncmVhdCBkZXRhaWxzLCBiZWNhdXNlIHRoZXJlIGlzbid0IGFueS4g SnVzdCBjaGVjayBpdHMgbWFuIHBhZ2UgYW5kIHNvdXJjZSBjb2RlOg0KPj4gaHR0cHM6Ly9t YW5wYWdlcy5kZWJpYW4ub3JnL3Vuc3RhYmxlL2RoLXNoZWxsLWNvbXBsZXRpb25zL2RoX3No ZWxsX2NvbXBsZXRpb25zLjEuZW4uaHRtbA0KPj4gaHR0cHM6Ly9zYWxzYS5kZWJpYW4ub3Jn L2RlYmlhbi9kaC1zaGVsbC1jb21wbGV0aW9ucw0KPiANCj4gVGhhbmsgeW91IGZvciB0aGlz IGRoIG1vZHVsZSEgQWZ0ZXIgYnJvd3NpbmcgdGhlIGV4YW1wbGVzLCBJIGNhbWUgdXAgd2l0 aA0KPiBhbiBvbGQgcHJvYmxlbSBhYm91dCB0aGVzZSBjb21wbGV0aW9uIHNjcmlwdHMgLS0g d2hldGhlciB0aGUgY29tcGxldGlvbnMNCj4gc2hvdWxkIGJlIGxvYWRlZCBieSBkZWZhdWx0 LCBhbmQgd2hldGhlciB0aGF0IGJlaGF2aW9yIHNob3VsZCBiZSBzeW5jZWQNCj4gYW1vbmcg c2hlbGxzLg0KDQpDb21wbGV0aW9ucyBhcmUgc3RhdGljIChyZWxhdGl2ZSB0byBhIHNwZWNp ZmljIHZlcnNpb24gb2YgdGhlIHByb2dyYW0pLg0KVGhlcmUgc2VlbXMgbm8gbmVlZCB0byBt b2RpZnkgdGhlbS4NClRoZXJlIHNlZW1zIG5vIG5lZWQgdG8gZGlzYWJsZSB0aGVtLg0KVGhl eSBkb24ndCBzZWVtIHRvIGNhdXNlIGhhcm0uDQpTbyBJIGRvbid0IHRoaW5rIGVuYWJsaW5n IHRoZW0gYnkgZGVmYXVsdCB3b3VsZCBjYXVzZSBhbnkgdHJvdWJsZS4NCg0KRGlmZmVyZW50 IHNoZWxscyBjb3VsZCBoYXZlIGRpZmZlcmVudCBjb252ZW50aW9ucy4NCkJ1dCB0aGUgc3Rh dHVzIHF1byBpcywgdG8gbXkga25vd2xlZGdlLA0KbW9zdCBwYWNrYWdlcyBqdXN0IGluc3Rh bGwgY29tcGxldGlvbnMgYXMgaW1tZWRpYXRlbHkgZW5hYmxlZC4NCkkgZG9uJ3QgdGhpbmsg c3VjaCBkaWZmZXJlbmNlcywgZXZlbiBpZiB0aGV5IGV4aXN0LCBtYXR0ZXIgYW55bW9yZS4N Cg0KPiBEbyB5b3UgdGhpbmsgaXQgaXMgdXNlZnVsIHRvIGRlZmluZSBzb21lIGZsYWdzIGZv cg0KPiBkaF9zaGVsbF9jb21wbGV0aW9ucywgbGlrZSAtLWVuYWJsZS1ieS1kZWZhdWx0LCAt LWRpc2FibGUtYnktZGVmYXVsdA0KPiB0byBkZWNpZGUgd2hldGhlciBhIGNvbXBsZXRpb24g ZmlsZSBzaG91bGQgYmUgZW5hYmxlZCBieSBkZWZhdWx0Lg0KPiANCj4gSSdtIHJhaXNpbmcg dGhpcyBxdWVzdGlvbiBiZWNhdXNlIEkgZmluZCBpdCBzb21ld2hhdCBjb25mdXNpbmcNCj4g YmVjYXVzZSBkaWZmZXJlbnQgc2hlbGxzIGRvIHRoZSBjb21wbGV0aW9ucyBhbmQga2V5Ymlu ZGluZ3MgaW4gdmVyeQ0KPiBkaWZmZXJlbnQgd2F5cy4gRm9yIGluc3RhbmNlLCBmemY6DQo+ IGh0dHBzOi8vc2Fsc2EuZGViaWFuLm9yZy9nby10ZWFtL3BhY2thZ2VzL2Z6Zi8tL2Jsb2Iv bWFzdGVyL2RlYmlhbi9SRUFETUUuRGViaWFuDQo+IA0KPiBBcyB5b3UgY2FuIHNlZSwga2V5 LWJpbmRpbmcgc2NyaXB0cyBhcmUgc2ltaWxhciB0byBjb21wbGV0aW9uIHNjcmlwdHMuDQo+ IE1heWJlIHRoZXkgY2FuIGJlIGRlYWx0IGJ5IHRoZSBzYW1lIGRoIG1vZHVsZSBhcyB3ZWxs LiBHZW5lcmFsbHkNCj4ga2V5LWJpbmRpbmcgc2NyaXB0cyBzaG91bGQgbm90IGJlIGVuYWJs ZWQgYnkgZGVmYXVsdCBkdWUgdG8gcG90ZW50aWFsDQo+IGNvbmZsaWN0cy4NCg0KQXQgYSBn bGFuY2UgeWVzLg0KDQpCdXQgaW5zdGFsbCBrZXliaW5kaW5ncyB3aGVyZT8NClNoZWxscyBo YXZlIHN0YW5kYXJkIGxvY2F0aW9ucyBpbiB3aGljaCBjb21wbGV0aW9ucyBhcmUgaW1tZWRp YXRlbHkgZW5hYmxlZC4NCktleWJpbmRpbmdzIG9idmlvdXNseSBzaG91bGRuJ3QgYmUgaW1t ZWRpYXRlbHkgZW5hYmxlZC4NCkJ1dCBhcmUgdGhlcmUgc3VjaCBzdGFuZGFyZCBsb2NhdGlv bnMgZm9yICJkaXNhYmxlZCIga2V5YmluZGluZ3M/DQpZb3VyIGV4YW1wbGUgZGlkbid0IHNo b3cgZXhpc3RlbmNlIG9mIHN1Y2guDQpJZiBub3QsIHdoZXJlIHNob3VsZCB3ZSBpbnN0YWxs IHRoZW0gdG8/DQpNYXliZSB3ZSBjYW4gaW5zdGFsbCB0aGVtIGFzIGRvY3Mgb3IgZXhhbXBs ZXMsDQpidXQgdGhlbiBhIGRlYmlhbi8kcGFja2FnZS57ZG9jcy9leGFtcGxlc30gd291bGQg ZG8uDQoNCkFsc28sIHRoZSBwYWNrYWdlIG5hbWUgaXMgYWxyZWFkeSB0aGVyZS4NCkknZCBy YXRoZXIgc29tZXRoaW5nIG5hbWVkICJzaGVsbC1jb21wbGV0aW9ucyIsDQpub3QgaGFuZGxl IHRoaW5ncyBvdGhlciB0aGFuLCB3ZWxsLCBzaGVsbCBjb21wbGV0aW9ucy4NCg0KPiBBIHF1 aWNrIHNlYXJjaCBzdWdnZXN0cyB0aGF0IGJvdGggcG9saWN5IGFuZCBkZXZyZWYgZG8gbm90 IGNvdmVyDQo+IHRoZSBzaGVsbCBpbnRlZ3JhdGlvbiB0b3BpYy4NCj4gDQo+IEFuIGV4YW1w bGUgdGhhdCByZXNlbWJsZXMgd2hhdCBJJ20gdGFsa2luZyBhYm91dCBpcyBkaF9pbnN0YWxs c3lzdGVtZC4NCj4gSXQgaGFzIC0tbm8tZW5hYmxlLCAtLXJlc3RhcnQtYWZ0ZXItdXBncmFk ZSwgLS1uby1yZXN0YXJ0LWFmdGVyLXVwZ3JhZGUsDQo+IGV0YyBmbGFncyB0byBjb250cm9s IHRoZSBzeXN0ZW1kIHVuaXQgYmVoYXZpb3IgdXBvbiBkcGtnIGFjdGlvbnMuDQoNClRoZXJl IGFyZSBhbHNvIHBhY2thZ2VzIHdpdGggc2VydmljZSBkZWZpbml0aW9ucyB0aGF0IGNhbid0 IGJlIHVzZWQgYXMgaXMuDQpPciBldmVuIHVud2FudGVkIGJ5IHRoZSB1c2VyLg0KVGhleSBj YW4gYXQgbW9zdCBiZSBpbnN0YWxsZWQgYXMgZG9jcyBvciBleGFtcGxlcy4NCklNTyB0aGlz IHNpdHVhdGlvbiBpcyBha2luIHRvIGtleWJpbmRpbmcgc2NyaXB0cy4NCg0KLS0gDQpTZHJh Z2VyLA0KQmxhaXIgTm9jdGlzDQoNCg==

    --------------ToTPOOpPZCgTwoDb6gcCEdWm--

    -----BEGIN PGP SIGNATURE-----

    iHUEARYKAB0WIQScTWEJ927Sl0a/hB7sV97Kb1Pv6QUCZ9lMaQAKCRDsV97Kb1Pv 6W8PAQDIDyOdlKU2usu29VOMy8opwdxlYo4yF4dC/N4jSyzAQAD5AWPXsWmjIcC8 f4u/cXzmM/WBvLEws3sqjN2KjsXc8Qc=
    =estG
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)