Testers needed for manjaro-zsh-config

Manjaro-zsh-config was updated to version 0.13 in unstable. The main new feature is the improved command-not-found hook.If you run a command that belongs to a package that you don’t have installed, it should tell you what you need to install and offer to install it.

Steps to test:

  1. Update manjaro-zsh-config to version 0.13
  2. Ensure that your ~/.zshrc is the same as /etc/skel/.zshrc
  3. Run some command that you don’t have installed, for example most, podman, docker, and so on

Please test if it is pleasant to use. Also, if you have any other suggestions for manjaro-zsh-config, you can post them here.

6 Likes

A couple of tests:

~ >>> blender                                                                  
zsh: command not found: blender
~ >>> most                                                                [127]
zsh: correct 'most' to '_mosh' [nyae]? n
zsh: command not found: most
~ >>> podman                                                              [127]
zsh: correct 'podman' to 'pod2man' [nyae]? n
zsh: command not found: podman
~ >>> docker                                                              [127]
zsh: command not found: docker
~ >>>      

I suspect a wrong path in to hook in the config. Whecking when I get home.

1 Like

Can you run

pkgfile -u
systemctl enable pkgfile-update.timer

And try again? It seems that the package is okay, but you might get that issue if pkgfile database is not updated.

EDIT: I added an install script to 0.14 to do this automatically

3 Likes

This works.

~ >>> most                                                                     
zsh: correct 'most' to '_mosh' [nyae]? n
most may be found in the following packages:
 extra/most 5.1.0-2	/usr/bin/most

Hmm… That does not seem right :thinking:

This how it is supposed to work:

~ >>> most                                                                                   
zsh: correct 'most' to '_mosh' [nyae]? n
The command most is not installed. It may be found in the following packages:
  extra/most 5.1.0-2	/usr/bin/most
Do you want to Install package most? (y/N)  y
pamac install most
Preparing...
==== AUTHENTICATING FOR org.manjaro.pamac.commit ====
Authentication is required to install, update, or remove packages
Authenticating as: Full Name  (username)
Password: 
==== AUTHENTICATION COMPLETE ====
Synchronizing package databases...
Warning: manjaro-zsh-config: local (0.14-1) is newer than community (0.13-1)
Resolving dependencies...
Checking inter-conflicts...
To upgrade (11):
  yelp-xsl                3.38.0-1              (3.36.0-1)              extra      182,1 kB
  xdg-desktop-portal      1.8.0-1               (1.7.2-1)               extra      340,6 kB
  xdg-desktop-portal-gtk  1.8.0-1               (1.7.1-1)               extra      188,0 kB
  tracker-miners          2.3.5-1               (2.3.4-1)               extra      532,1 kB
  tracker                 2.3.6-1               (2.3.5-1)               extra      1,1 MB
  python-reportlab        3.5.50-1              (3.5.49-1)              community  2,4 MB
  pipewire                0.3.12-1              (0.3.11-1)              extra      1,1 MB
  lib32-mesa              20.1.8-1              (20.1.7-1)              multilib   13,0 MB
  mesa                    20.1.8-1              (20.1.7-1)              extra      14,8 MB
  gupnp-igd               1.2.0-1               (0.2.5+3+gedd78a6-3)    extra      30,0 kB
  gupnp-av                0.12.11+3+g2123c81-1  (0.12.11+2+gb5ca07c-2)  extra      138,0 kB
To install (1):
  most                    5.1.0-2                                       extra      54,4 kB

Total download size: 34,0 MB
Total installed size: 163,6 kB
Apply transaction ? [y/N]
1 Like

Did that and also it seems i do not have the update yet to 0.14-1 yet.

And no dice?

Nothing, no update, same output. Will test more later on.

Okay, 0.15 pushed to unstable. It worked at least when I tested it with a new user account, but system had already up to date database.

2 Likes

Updated and is working!

2 Likes

I didn’t expect an installation prompt following it.

just installed the update from testing and applied the changes to my .zshrc - still had to manualy do

pkgfile -u
systemctl enable pkgfile-update.timer

though.

1 Like

This feature is awesome, but I think there should be also a manjaro-powerline-zsh-theme.
And make zsh as default!

It has been default in gnome edition for a few releases now.

Submit a pull request for powerline theme and it has a good chance of being merged. I just haven’t had the time to do it myself.

Some challanges:

  • Needs to be disabled for tty, as tty does not have suitable fonts for it.
  • Ideally should detect if a suitable font is enabled and disable powerline if not.

Correction feature works perfectly as far as I can tell. Would be nice if it could be added to a list with corrections, though, since clicking through multiple y/n questions can be tiresome.
suggestions:

  1. do nothing
  2. correct ‘most’ to ‘_mosh’
  3. install package extra/most 5.1.0-2

Für verständnis:
ist “find-the-command bzw command-not found schon bei manjaro dabei oder muss ich es zusätzlich installieren?
.
For understanding (Gnome / zsh):
is “find-the-command” or “command-not-found” already included with manjaro or do I have to install it additionally?”
.
(from: AUR)

1 Like

No, this is setup to use pkgfile.

pkgfile includes a Zsh script file that provides a command_not_found_handler function that will automatically search the pkgfile database when entering an unrecognized command.

You need to source the script to enable it. For example:

~/.zshrc

source /usr/share/doc/pkgfile/command-not-found.zsh

Zsh: The “command not found” handler

1 Like

Thank You for the clarification!