2

I'd like to remove the Archive field column that appears in my packages menu buffer, but haven't been able to find a setting to allow me to do this. I've tried all I can find in the m-x packages-menu- group but drawn a blank. As the fm is immense, I wonder if anybody could point me in the right direction.

1

The packages menu uses a derived version of tabulated-list-mode in order to display the packages. The columns are set in such a way that if you're using multiple archives (i.e. melpa and elpa), then it defines that column. There doesn't appear to be any non-hacky way of removing it.

There are two changes I made in package.el:

In the call to define-derived-mode package-menu-mode, this needs to be removed:

,@(if (cdr package-archives)
      '(("Archive" 10 package-menu--archive-predicate)))

and this from package-menu--print-info:

,@(if (cdr package-archives)
      (list (propertize (or (package-desc-archive pkg-desc) "")
                        'font-lock-face face)))

This is in Emacs 24.5.1.

You can redefine those functions after including 'package in your init file, or maybe you can use defadvice or something. I redefined them in the scratch buffer and it worked fine for me.

| improve this answer | |
  • Very helpful. I've been able to find a package.elc in /usr/share/emacs/ and I also found an archived package.el which I extracted, edited as you suggested and placed in ~/.emacs.d/ Unfortunately, this doesn't seem to have done the trick. I'm obviously missing something that would be very obvious to somebody who better understands emacs' lisp behaviour. Where should I be looking? – Tony Martin Aug 27 '17 at 9:38
  • The easiest way would be to take those edited functions and put them directly in your init.el after (require 'package). – Jeff Spaulding Aug 27 '17 at 11:38
  • Great! That worked. And more important, I've learned from you that I can override any function definition by including it in init.el. Thanks for taking the time. – Tony Martin Aug 27 '17 at 15:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.