GNU bug report logs - #79242
30.1; [ELPA] More proposed improvements for oauth2

Previous Next

Package: emacs;

Reported by: Xiyue Deng <manphiz <at> gmail.com>

Date: Fri, 15 Aug 2025 09:39:01 UTC

Severity: normal

Found in version 30.1

Done: Xiyue Deng <manphiz <at> gmail.com>

To reply to this bug, email your comments to 79242 AT debbugs.gnu.org.
There is no need to reopen the bug first.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Fri, 15 Aug 2025 09:39:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Xiyue Deng <manphiz <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Fri, 15 Aug 2025 09:39:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 30.1; [ELPA] More proposed improvements for oauth2
Date: Fri, 15 Aug 2025 02:38:10 -0700
[Message part 1 (text/plain, inline)]
This is the promised follow-up of bug#79168[1] and bug#79207[2]
(included here).  I didn't expect it would take quite some effort to
make it work correctly.  Here is a summary of the changes:

* Update plstore id calculation to include user name.
  - This enables using public client-id/client-secret (e.g. thunderbird)
    to simplify OAuth2 registration.
* QoL improvement (refactor URL handling and logging).
* Fix cache handling.
* Implement OAuth2 PKCE extension (RFC7636)
  - This is the missing piece that let me log onto outlook.com.  (It has
    been years since I started trying to work outlook.  Finally!)

I have been running it in the past few days (with my updated
auth-source-xoauth2-plugin).  With those changes, using OAuth2 can be
greatly simplified.  I'll also update my plugin shortly after the
patches are reviewed and accepted.

I'll send the patches through git-send-email.  Hopefully the commit
messages explain the changes, but do let me know if anything is unclear.
TIA!

[1] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=79168
[2] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=79207



In GNU Emacs 30.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.49,
 cairo version 1.18.4) of 2025-08-10, modified by Debian built on sbuild
System Description: Debian GNU/Linux forky/sid

Configured using:
 'configure --build x86_64-linux-gnu --prefix=/usr
 --sharedstatedir=/var/lib --libexecdir=/usr/libexec
 --localstatedir=/var/lib --infodir=/usr/share/info
 --mandir=/usr/share/man --with-libsystemd --with-pop=yes
 --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/30.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/30.1/site-lisp:/usr/share/emacs/site-lisp
 --with-sound=alsa --without-gconf --with-mailutils --build
 x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib
 --libexecdir=/usr/libexec --localstatedir=/var/lib
 --infodir=/usr/share/info --mandir=/usr/share/man --with-libsystemd
 --with-pop=yes
 --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/30.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/30.1/site-lisp:/usr/share/emacs/site-lisp
 --with-sound=alsa --without-gconf --with-mailutils --with-cairo
 --with-x=yes --with-x-toolkit=gtk3 --with-toolkit-scroll-bars
 'CFLAGS=-g -O2 -Werror=implicit-function-declaration
 -ffile-prefix-map=/build/reproducible-path/emacs-30.1+1=. -fstack-protector-strong
 -fstack-clash-protection -Wformat -Werror=format-security
 -fcf-protection -Wall' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2'
 LDFLAGS=-Wl,-z,relro'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP
NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Group

Minor modes in effect:
  gnus-topic-mode: t
  cursor-sensor-mode: t
  gnus-undo-mode: t
  bug-reference-mode: t
  xclip-mode: t
  treemacs-project-follow-mode: t
  treemacs-follow-mode: t
  treemacs-git-mode: t
  treemacs-fringe-indicator-mode: t
  auth-source-xoauth2-plugin-mode: t
  activities-tabs-mode: t
  activities-mode: t
  fido-vertical-mode: t
  icomplete-vertical-mode: t
  icomplete-mode: t
  fido-mode: t
  override-global-mode: t
  global-display-line-numbers-mode: t
  display-line-numbers-mode: t
  global-auto-revert-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  tab-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  minibuffer-regexp-mode: t
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
/home/manphiz/Projects/debian-packaging/emacs-auth-source-xoauth2-plugin/auth-source-xoauth2-plugin hides /usr/share/emacs/site-lisp/elpa/auth-source-xoauth2-plugin-0.2.1/auth-source-xoauth2-plugin
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/debian-autoloads hides /usr/share/emacs/site-lisp/elpa/gnuplot-0.8.1/debian-autoloads
/home/manphiz/Projects/debian-packaging/emacs-oauth2/oauth2-tests hides /usr/share/emacs/site-lisp/elpa/oauth2-0.17/oauth2-tests
/home/manphiz/Projects/debian-packaging/emacs-oauth2/oauth2 hides /usr/share/emacs/site-lisp/elpa/oauth2-0.17/oauth2
/usr/share/emacs/site-lisp/elpa/ace-window-0.10.0/ace-window-pkg hides /usr/share/emacs/site-lisp/elpa-src/ace-window-0.10.0/ace-window-pkg
/usr/share/emacs/site-lisp/elpa/ace-window-0.10.0/ace-window hides /usr/share/emacs/site-lisp/elpa-src/ace-window-0.10.0/ace-window
/usr/share/emacs/site-lisp/elpa/ace-window-0.10.0/ace-window-autoloads hides /usr/share/emacs/site-lisp/elpa-src/ace-window-0.10.0/ace-window-autoloads
/usr/share/emacs/site-lisp/elpa/activities-0.7.2/activities-tabs hides /usr/share/emacs/site-lisp/elpa-src/activities-0.7.2/activities-tabs
/usr/share/emacs/site-lisp/elpa/activities-0.7.2/activities-autoloads hides /usr/share/emacs/site-lisp/elpa-src/activities-0.7.2/activities-autoloads
/usr/share/emacs/site-lisp/elpa/activities-0.7.2/activities-list hides /usr/share/emacs/site-lisp/elpa-src/activities-0.7.2/activities-list
/usr/share/emacs/site-lisp/elpa/activities-0.7.2/activities hides /usr/share/emacs/site-lisp/elpa-src/activities-0.7.2/activities
/usr/share/emacs/site-lisp/elpa/activities-0.7.2/activities-pkg hides /usr/share/emacs/site-lisp/elpa-src/activities-0.7.2/activities-pkg
/usr/share/emacs/site-lisp/elpa/apache-mode-2.2.0/apache-mode hides /usr/share/emacs/site-lisp/elpa-src/apache-mode-2.2.0/apache-mode
/usr/share/emacs/site-lisp/elpa/apache-mode-2.2.0/apache-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/apache-mode-2.2.0/apache-mode-autoloads
/usr/share/emacs/site-lisp/elpa/apache-mode-2.2.0/apache-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/apache-mode-2.2.0/apache-mode-pkg
/usr/share/emacs/site-lisp/elpa/async-1.9.9/dired-async hides /usr/share/emacs/site-lisp/elpa-src/async-1.9.9/dired-async
/usr/share/emacs/site-lisp/elpa/async-1.9.9/async-pkg hides /usr/share/emacs/site-lisp/elpa-src/async-1.9.9/async-pkg
/usr/share/emacs/site-lisp/elpa/async-1.9.9/async hides /usr/share/emacs/site-lisp/elpa-src/async-1.9.9/async
/usr/share/emacs/site-lisp/elpa/async-1.9.9/async-bytecomp hides /usr/share/emacs/site-lisp/elpa-src/async-1.9.9/async-bytecomp
/usr/share/emacs/site-lisp/elpa/async-1.9.9/smtpmail-async hides /usr/share/emacs/site-lisp/elpa-src/async-1.9.9/smtpmail-async
/usr/share/emacs/site-lisp/elpa/async-1.9.9/async-package hides /usr/share/emacs/site-lisp/elpa-src/async-1.9.9/async-package
/usr/share/emacs/site-lisp/elpa/async-1.9.9/async-autoloads hides /usr/share/emacs/site-lisp/elpa-src/async-1.9.9/async-autoloads
/usr/share/emacs/site-lisp/elpa/ats2-mode-1.0/ats2-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/ats2-mode-1.0/ats2-mode-autoloads
/usr/share/emacs/site-lisp/elpa/ats2-mode-1.0/ats2-mode hides /usr/share/emacs/site-lisp/elpa-src/ats2-mode-1.0/ats2-mode
/usr/share/emacs/site-lisp/elpa/ats2-mode-1.0/ats2-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/ats2-mode-1.0/ats2-mode-pkg
/usr/share/emacs/site-lisp/elpa/auth-source-xoauth2-plugin-0.2.1/auth-source-xoauth2-plugin-autoloads hides /usr/share/emacs/site-lisp/elpa-src/auth-source-xoauth2-plugin-0.2.1/auth-source-xoauth2-plugin-autoloads
/home/manphiz/Projects/debian-packaging/emacs-auth-source-xoauth2-plugin/auth-source-xoauth2-plugin hides /usr/share/emacs/site-lisp/elpa-src/auth-source-xoauth2-plugin-0.2.1/auth-source-xoauth2-plugin
/usr/share/emacs/site-lisp/elpa/auth-source-xoauth2-plugin-0.2.1/auth-source-xoauth2-plugin-pkg hides /usr/share/emacs/site-lisp/elpa-src/auth-source-xoauth2-plugin-0.2.1/auth-source-xoauth2-plugin-pkg
/usr/share/emacs/site-lisp/elpa/avy-0.5.0/avy hides /usr/share/emacs/site-lisp/elpa-src/avy-0.5.0/avy
/usr/share/emacs/site-lisp/elpa/avy-0.5.0/avy-pkg hides /usr/share/emacs/site-lisp/elpa-src/avy-0.5.0/avy-pkg
/usr/share/emacs/site-lisp/elpa/avy-0.5.0/avy-autoloads hides /usr/share/emacs/site-lisp/elpa-src/avy-0.5.0/avy-autoloads
/usr/share/emacs/site-lisp/elpa/bar-cursor-2.0/bar-cursor-autoloads hides /usr/share/emacs/site-lisp/elpa-src/bar-cursor-2.0/bar-cursor-autoloads
/usr/share/emacs/site-lisp/elpa/bar-cursor-2.0/bar-cursor hides /usr/share/emacs/site-lisp/elpa-src/bar-cursor-2.0/bar-cursor
/usr/share/emacs/site-lisp/elpa/bar-cursor-2.0/bar-cursor-pkg hides /usr/share/emacs/site-lisp/elpa-src/bar-cursor-2.0/bar-cursor-pkg
/usr/share/emacs/site-lisp/elpa/bazel-0/bazel-autoloads hides /usr/share/emacs/site-lisp/elpa-src/bazel-0/bazel-autoloads
/usr/share/emacs/site-lisp/elpa/bazel-0/test hides /usr/share/emacs/site-lisp/elpa-src/bazel-0/test
/usr/share/emacs/site-lisp/elpa/bazel-0/bazel-pkg hides /usr/share/emacs/site-lisp/elpa-src/bazel-0/bazel-pkg
/usr/share/emacs/site-lisp/elpa/bazel-0/bazel hides /usr/share/emacs/site-lisp/elpa-src/bazel-0/bazel
/usr/share/emacs/site-lisp/elpa/bison-mode-0.3/bison-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/bison-mode-0.3/bison-mode-autoloads
/usr/share/emacs/site-lisp/elpa/bison-mode-0.3/bison-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/bison-mode-0.3/bison-mode-pkg
/usr/share/emacs/site-lisp/elpa/bison-mode-0.3/bison-mode hides /usr/share/emacs/site-lisp/elpa-src/bison-mode-0.3/bison-mode
/usr/share/emacs/site-lisp/elpa/bm-202506/bm-autoloads hides /usr/share/emacs/site-lisp/elpa-src/bm-202506/bm-autoloads
/usr/share/emacs/site-lisp/elpa/bm-202506/bm-pkg hides /usr/share/emacs/site-lisp/elpa-src/bm-202506/bm-pkg
/usr/share/emacs/site-lisp/elpa/bm-202506/bm hides /usr/share/emacs/site-lisp/elpa-src/bm-202506/bm
/usr/share/emacs/site-lisp/elpa/bm-202506/bm-sync hides /usr/share/emacs/site-lisp/elpa-src/bm-202506/bm-sync
/usr/share/emacs/site-lisp/elpa/boxquote-2.3/boxquote-pkg hides /usr/share/emacs/site-lisp/elpa-src/boxquote-2.3/boxquote-pkg
/usr/share/emacs/site-lisp/elpa/boxquote-2.3/boxquote-autoloads hides /usr/share/emacs/site-lisp/elpa-src/boxquote-2.3/boxquote-autoloads
/usr/share/emacs/site-lisp/elpa/boxquote-2.3/boxquote hides /usr/share/emacs/site-lisp/elpa-src/boxquote-2.3/boxquote
/usr/share/emacs/site-lisp/elpa/bpftrace-mode-0.1.0/bpftrace-mode hides /usr/share/emacs/site-lisp/elpa-src/bpftrace-mode-0.1.0/bpftrace-mode
/usr/share/emacs/site-lisp/elpa/bpftrace-mode-0.1.0/bpftrace-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/bpftrace-mode-0.1.0/bpftrace-mode-pkg
/usr/share/emacs/site-lisp/elpa/bpftrace-mode-0.1.0/bpftrace-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/bpftrace-mode-0.1.0/bpftrace-mode-autoloads
/usr/share/emacs/site-lisp/elpa/browse-kill-ring-2.0.0/browse-kill-ring-autoloads hides /usr/share/emacs/site-lisp/elpa-src/browse-kill-ring-2.0.0/browse-kill-ring-autoloads
/usr/share/emacs/site-lisp/elpa/browse-kill-ring-2.0.0/browse-kill-ring-pkg hides /usr/share/emacs/site-lisp/elpa-src/browse-kill-ring-2.0.0/browse-kill-ring-pkg
/usr/share/emacs/site-lisp/elpa/browse-kill-ring-2.0.0/browse-kill-ring hides /usr/share/emacs/site-lisp/elpa-src/browse-kill-ring-2.0.0/browse-kill-ring
/usr/share/emacs/site-lisp/elpa/caml-4.9/caml-autoloads hides /usr/share/emacs/site-lisp/elpa-src/caml-4.9/caml-autoloads
/usr/share/emacs/site-lisp/elpa/caml-4.9/caml-font hides /usr/share/emacs/site-lisp/elpa-src/caml-4.9/caml-font
/usr/share/emacs/site-lisp/elpa/caml-4.9/caml hides /usr/share/emacs/site-lisp/elpa-src/caml-4.9/caml
/usr/share/emacs/site-lisp/elpa/caml-4.9/inf-caml hides /usr/share/emacs/site-lisp/elpa-src/caml-4.9/inf-caml
/usr/share/emacs/site-lisp/elpa/caml-4.9/caml-font-old hides /usr/share/emacs/site-lisp/elpa-src/caml-4.9/caml-font-old
/usr/share/emacs/site-lisp/elpa/caml-4.9/activate-caml-mode hides /usr/share/emacs/site-lisp/elpa-src/caml-4.9/activate-caml-mode
/usr/share/emacs/site-lisp/elpa/caml-4.9/caml-types hides /usr/share/emacs/site-lisp/elpa-src/caml-4.9/caml-types
/usr/share/emacs/site-lisp/elpa/caml-4.9/camldebug hides /usr/share/emacs/site-lisp/elpa-src/caml-4.9/camldebug
/usr/share/emacs/site-lisp/elpa/caml-4.9/caml-pkg hides /usr/share/emacs/site-lisp/elpa-src/caml-4.9/caml-pkg
/usr/share/emacs/site-lisp/elpa/caml-4.9/caml-help hides /usr/share/emacs/site-lisp/elpa-src/caml-4.9/caml-help
/usr/share/emacs/site-lisp/elpa/cfrs-1.6.0/cfrs-pkg hides /usr/share/emacs/site-lisp/elpa-src/cfrs-1.6.0/cfrs-pkg
/usr/share/emacs/site-lisp/elpa/cfrs-1.6.0/cfrs hides /usr/share/emacs/site-lisp/elpa-src/cfrs-1.6.0/cfrs
/usr/share/emacs/site-lisp/elpa/cfrs-1.6.0/cfrs-autoloads hides /usr/share/emacs/site-lisp/elpa-src/cfrs-1.6.0/cfrs-autoloads
/usr/share/emacs/site-lisp/elpa/clojure-mode-5.20.0/clojure-mode hides /usr/share/emacs/site-lisp/elpa-src/clojure-mode-5.20.0/clojure-mode
/usr/share/emacs/site-lisp/elpa/clojure-mode-5.20.0/clojure-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/clojure-mode-5.20.0/clojure-mode-pkg
/usr/share/emacs/site-lisp/elpa/clojure-mode-5.20.0/clojure-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/clojure-mode-5.20.0/clojure-mode-autoloads
/usr/share/emacs/site-lisp/elpa/clojure-mode-extra-font-locking-3.0.0/clojure-mode-extra-font-locking-pkg hides /usr/share/emacs/site-lisp/elpa-src/clojure-mode-extra-font-locking-3.0.0/clojure-mode-extra-font-locking-pkg
/usr/share/emacs/site-lisp/elpa/clojure-mode-extra-font-locking-3.0.0/clojure-mode-extra-font-locking hides /usr/share/emacs/site-lisp/elpa-src/clojure-mode-extra-font-locking-3.0.0/clojure-mode-extra-font-locking
/usr/share/emacs/site-lisp/elpa/clojure-mode-extra-font-locking-3.0.0/clojure-mode-extra-font-locking-autoloads hides /usr/share/emacs/site-lisp/elpa-src/clojure-mode-extra-font-locking-3.0.0/clojure-mode-extra-font-locking-autoloads
/usr/share/emacs/site-lisp/elpa/cmake-mode-4.0.1/cmake-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/cmake-mode-4.0.1/cmake-mode-pkg
/usr/share/emacs/site-lisp/elpa/cmake-mode-4.0.1/cmake-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/cmake-mode-4.0.1/cmake-mode-autoloads
/usr/share/emacs/site-lisp/elpa/cmake-mode-4.0.1/cmake-mode hides /usr/share/emacs/site-lisp/elpa-src/cmake-mode-4.0.1/cmake-mode
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/late-night-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/late-night-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/desert-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/desert-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/aalto-dark-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/aalto-dark-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/taming-mr-arneson-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/taming-mr-arneson-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/blue-mood-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/blue-mood-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/hober-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/hober-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/pok-wob-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/pok-wob-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/emacs-21-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/emacs-21-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/fischmeister-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/fischmeister-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/simple-1-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/simple-1-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/dark-info-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/dark-info-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/raspopovic-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/raspopovic-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/dark-green-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/dark-green-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/mistyday-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/mistyday-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/wheat-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/wheat-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/whateveryouwant-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/whateveryouwant-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/pok-wog-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/pok-wog-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/dark-erc-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/dark-erc-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/calm-forest-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/calm-forest-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/blue-erc-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/blue-erc-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/feng-shui-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/feng-shui-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/jonadabian-slate-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/jonadabian-slate-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/jb-simple-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/jb-simple-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/andreas-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/andreas-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/word-perfect-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/word-perfect-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/retro-orange-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/retro-orange-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/goldenrod-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/goldenrod-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/lethe-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/lethe-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/marine-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/marine-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/snowish-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/snowish-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/midnight-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/midnight-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/robin-hood-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/robin-hood-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/lawrence-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/lawrence-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/railscast-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/railscast-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/standard-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/standard-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/clarity-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/clarity-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/bharadwaj-slate-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/bharadwaj-slate-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/rotor-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/rotor-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/gnome-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/gnome-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/ld-dark-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/ld-dark-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/salmon-diff-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/salmon-diff-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/greiner-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/greiner-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/blue-eshell-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/blue-eshell-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/subtle-hacker-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/subtle-hacker-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/blue-sea-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/blue-sea-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/euphoria-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/euphoria-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/jonadabian-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/jonadabian-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/aliceblue-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/aliceblue-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/jsc-dark-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/jsc-dark-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/bharadwaj-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/bharadwaj-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/salmon-font-lock-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/salmon-font-lock-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/deep-blue-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/deep-blue-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/charcoal-black-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/charcoal-black-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/resolve-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/resolve-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/parus-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/parus-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/matrix-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/matrix-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/subtle-blue-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/subtle-blue-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/jsc-light-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/jsc-light-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/digital-ofs1-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/digital-ofs1-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/dark-blue-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/dark-blue-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/arjen-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/arjen-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/katester-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/katester-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/color-theme-modern-autoloads hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/color-theme-modern-autoloads
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/classic-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/classic-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/marquardt-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/marquardt-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/tty-dark-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/tty-dark-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/blippblopp-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/blippblopp-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/ramangalahy-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/ramangalahy-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/infodoc-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/infodoc-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/high-contrast-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/high-contrast-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/ryerson-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/ryerson-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/renegade-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/renegade-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/kingsajz-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/kingsajz-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/black-on-gray-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/black-on-gray-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/dark-font-lock-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/dark-font-lock-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/xemacs-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/xemacs-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/cobalt-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/cobalt-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/scintilla-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/scintilla-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/sitaramv-solaris-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/sitaramv-solaris-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/shaman-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/shaman-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/blue-gnus-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/blue-gnus-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/emacs-nw-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/emacs-nw-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/beige-eshell-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/beige-eshell-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/color-theme-modern-pkg hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/color-theme-modern-pkg
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/gray30-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/gray30-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/julie-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/julie-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/dark-blue2-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/dark-blue2-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/retro-green-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/retro-green-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/taylor-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/taylor-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/vim-colors-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/vim-colors-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/jedit-grey-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/jedit-grey-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/beige-diff-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/beige-diff-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/oswald-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/oswald-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/pierson-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/pierson-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/comidia-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/comidia-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/dark-laptop-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/dark-laptop-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/snow-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/snow-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/xp-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/xp-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/color-theme-modern hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/color-theme-modern
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/dark-gnus-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/dark-gnus-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/subdued-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/subdued-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/standard-ediff-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/standard-ediff-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/sitaramv-nt-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/sitaramv-nt-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/gtk-ide-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/gtk-ide-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/jsc-light2-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/jsc-light2-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/gnome2-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/gnome2-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/aalto-light-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/aalto-light-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/billw-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/billw-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/montz-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/montz-theme
/usr/share/emacs/site-lisp/elpa/color-theme-modern-0.0.2/gray1-theme hides /usr/share/emacs/site-lisp/elpa-src/color-theme-modern-0.0.2/gray1-theme
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-cmake hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-cmake
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-bbdb hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-bbdb
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-keywords hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-keywords
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-capf hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-capf
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-clang hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-clang
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-pkg hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-pkg
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-files hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-files
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-gtags hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-gtags
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-yasnippet hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-yasnippet
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-oddmuse hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-oddmuse
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-template hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-template
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-autoloads hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-autoloads
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-tng hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-tng
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-ispell hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-ispell
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-tempo hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-tempo
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-dabbrev hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-dabbrev
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-abbrev hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-abbrev
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-css hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-css
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-nxml hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-nxml
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-etags hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-etags
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-dabbrev-code hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-dabbrev-code
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-semantic hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-semantic
/usr/share/emacs/site-lisp/elpa/company-1.0.2/company-tests hides /usr/share/emacs/site-lisp/elpa-src/company-1.0.2/company-tests
/usr/share/emacs/site-lisp/elpa/corfu-2.1/corfu-popupinfo hides /usr/share/emacs/site-lisp/elpa-src/corfu-2.1/corfu-popupinfo
/usr/share/emacs/site-lisp/elpa/corfu-2.1/corfu-quick hides /usr/share/emacs/site-lisp/elpa-src/corfu-2.1/corfu-quick
/usr/share/emacs/site-lisp/elpa/corfu-2.1/corfu-echo hides /usr/share/emacs/site-lisp/elpa-src/corfu-2.1/corfu-echo
/usr/share/emacs/site-lisp/elpa/corfu-2.1/corfu-autoloads hides /usr/share/emacs/site-lisp/elpa-src/corfu-2.1/corfu-autoloads
/usr/share/emacs/site-lisp/elpa/corfu-2.1/corfu-info hides /usr/share/emacs/site-lisp/elpa-src/corfu-2.1/corfu-info
/usr/share/emacs/site-lisp/elpa/corfu-2.1/corfu hides /usr/share/emacs/site-lisp/elpa-src/corfu-2.1/corfu
/usr/share/emacs/site-lisp/elpa/corfu-2.1/corfu-indexed hides /usr/share/emacs/site-lisp/elpa-src/corfu-2.1/corfu-indexed
/usr/share/emacs/site-lisp/elpa/corfu-2.1/corfu-pkg hides /usr/share/emacs/site-lisp/elpa-src/corfu-2.1/corfu-pkg
/usr/share/emacs/site-lisp/elpa/corfu-2.1/corfu-history hides /usr/share/emacs/site-lisp/elpa-src/corfu-2.1/corfu-history
/usr/share/emacs/site-lisp/elpa/corfu-terminal-0.7/corfu-terminal hides /usr/share/emacs/site-lisp/elpa-src/corfu-terminal-0.7/corfu-terminal
/usr/share/emacs/site-lisp/elpa/corfu-terminal-0.7/corfu-terminal-autoloads hides /usr/share/emacs/site-lisp/elpa-src/corfu-terminal-0.7/corfu-terminal-autoloads
/usr/share/emacs/site-lisp/elpa/corfu-terminal-0.7/corfu-terminal-pkg hides /usr/share/emacs/site-lisp/elpa-src/corfu-terminal-0.7/corfu-terminal-pkg
/usr/share/emacs/site-lisp/elpa/csv-mode-1.27/csv-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/csv-mode-1.27/csv-mode-autoloads
/usr/share/emacs/site-lisp/elpa/csv-mode-1.27/csv-mode hides /usr/share/emacs/site-lisp/elpa-src/csv-mode-1.27/csv-mode
/usr/share/emacs/site-lisp/elpa/csv-mode-1.27/csv-mode-tests hides /usr/share/emacs/site-lisp/elpa-src/csv-mode-1.27/csv-mode-tests
/usr/share/emacs/site-lisp/elpa/csv-mode-1.27/csv-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/csv-mode-1.27/csv-mode-pkg
/usr/share/emacs/site-lisp/elpa/dape-0.24.1/dape-pkg hides /usr/share/emacs/site-lisp/elpa-src/dape-0.24.1/dape-pkg
/usr/share/emacs/site-lisp/elpa/dape-0.24.1/dape-autoloads hides /usr/share/emacs/site-lisp/elpa-src/dape-0.24.1/dape-autoloads
/usr/share/emacs/site-lisp/elpa/dape-0.24.1/dape-tests hides /usr/share/emacs/site-lisp/elpa-src/dape-0.24.1/dape-tests
/usr/share/emacs/site-lisp/elpa/dape-0.24.1/dape hides /usr/share/emacs/site-lisp/elpa-src/dape-0.24.1/dape
/usr/share/emacs/site-lisp/elpa/dart-mode-1.0.7/dart-mode hides /usr/share/emacs/site-lisp/elpa-src/dart-mode-1.0.7/dart-mode
/usr/share/emacs/site-lisp/elpa/dart-mode-1.0.7/dart-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/dart-mode-1.0.7/dart-mode-pkg
/usr/share/emacs/site-lisp/elpa/dart-mode-1.0.7/dart-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/dart-mode-1.0.7/dart-mode-autoloads
/usr/share/emacs/site-lisp/elpa/dash-2.20.0/dash hides /usr/share/emacs/site-lisp/elpa-src/dash-2.20.0/dash
/usr/share/emacs/site-lisp/elpa/dash-2.20.0/dash-autoloads hides /usr/share/emacs/site-lisp/elpa-src/dash-2.20.0/dash-autoloads
/usr/share/emacs/site-lisp/elpa/dash-2.20.0/dash-pkg hides /usr/share/emacs/site-lisp/elpa-src/dash-2.20.0/dash-pkg
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/debian-bug hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37.19/debian-bug
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/deb-view hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37.19/deb-view
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/debian-el-autoloads hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37.19/debian-el-autoloads
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/preseed hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37.19/preseed
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/apt-utils hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37.19/apt-utils
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/debian-el-pkg hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37.19/debian-el-pkg
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/debian-el hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37.19/debian-el
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/gnus-BTS hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37.19/gnus-BTS
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/debian-autoloads hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37.19/debian-autoloads
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/apt-sources hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37.19/apt-sources
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/apt-deb822-sources hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37.19/apt-deb822-sources
/usr/share/emacs/site-lisp/elpa/debpaste-0.1.5/debpaste hides /usr/share/emacs/site-lisp/elpa-src/debpaste-0.1.5/debpaste
/usr/share/emacs/site-lisp/elpa/debpaste-0.1.5/debpaste-pkg hides /usr/share/emacs/site-lisp/elpa-src/debpaste-0.1.5/debpaste-pkg
/usr/share/emacs/site-lisp/elpa/debpaste-0.1.5/debpaste-autoloads hides /usr/share/emacs/site-lisp/elpa-src/debpaste-0.1.5/debpaste-autoloads
/usr/share/emacs/site-lisp/elpa/devscripts-40/pbuilder-mode hides /usr/share/emacs/site-lisp/elpa-src/devscripts-40/pbuilder-mode
/usr/share/emacs/site-lisp/elpa/devscripts-40/pbuilder-log-view-mode hides /usr/share/emacs/site-lisp/elpa-src/devscripts-40/pbuilder-log-view-mode
/usr/share/emacs/site-lisp/elpa/devscripts-40/devscripts hides /usr/share/emacs/site-lisp/elpa-src/devscripts-40/devscripts
/usr/share/emacs/site-lisp/elpa/devscripts-40/devscripts-pkg hides /usr/share/emacs/site-lisp/elpa-src/devscripts-40/devscripts-pkg
/usr/share/emacs/site-lisp/elpa/devscripts-40/devscripts-autoloads hides /usr/share/emacs/site-lisp/elpa-src/devscripts-40/devscripts-autoloads
/usr/share/emacs/site-lisp/elpa/diminish-0.45/diminish-autoloads hides /usr/share/emacs/site-lisp/elpa-src/diminish-0.45/diminish-autoloads
/usr/share/emacs/site-lisp/elpa/diminish-0.45/diminish hides /usr/share/emacs/site-lisp/elpa-src/diminish-0.45/diminish
/usr/share/emacs/site-lisp/elpa/diminish-0.45/diminish-pkg hides /usr/share/emacs/site-lisp/elpa-src/diminish-0.45/diminish-pkg
/usr/share/emacs/site-lisp/elpa/dockerfile-mode-1.7/dockerfile-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/dockerfile-mode-1.7/dockerfile-mode-pkg
/usr/share/emacs/site-lisp/elpa/dockerfile-mode-1.7/dockerfile-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/dockerfile-mode-1.7/dockerfile-mode-autoloads
/usr/share/emacs/site-lisp/elpa/dockerfile-mode-1.7/dockerfile-mode hides /usr/share/emacs/site-lisp/elpa-src/dockerfile-mode-1.7/dockerfile-mode
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.19/debian-bts-control hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.19/debian-bts-control
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.19/dpkg-dev-el hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.19/dpkg-dev-el
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.19/dpkg-dev-common-utils hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.19/dpkg-dev-common-utils
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.19/debian-autopkgtest-control-mode hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.19/debian-autopkgtest-control-mode
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.19/debian-changelog-mode hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.19/debian-changelog-mode
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.19/debian-copyright hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.19/debian-copyright
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.19/readme-debian hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.19/readme-debian
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.19/dpkg-dev-el-autoloads hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.19/dpkg-dev-el-autoloads
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.19/dpkg-dev-el-pkg hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.19/dpkg-dev-el-pkg
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.19/debian-control-mode hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.19/debian-control-mode
/usr/share/emacs/site-lisp/elpa/elfeed-3.4.2/elfeed-pkg hides /usr/share/emacs/site-lisp/elpa-src/elfeed-3.4.2/elfeed-pkg
/usr/share/emacs/site-lisp/elpa/elfeed-3.4.2/elfeed-link hides /usr/share/emacs/site-lisp/elpa-src/elfeed-3.4.2/elfeed-link
/usr/share/emacs/site-lisp/elpa/elfeed-3.4.2/elfeed-lib hides /usr/share/emacs/site-lisp/elpa-src/elfeed-3.4.2/elfeed-lib
/usr/share/emacs/site-lisp/elpa/elfeed-3.4.2/elfeed-search hides /usr/share/emacs/site-lisp/elpa-src/elfeed-3.4.2/elfeed-search
/usr/share/emacs/site-lisp/elpa/elfeed-3.4.2/elfeed-show hides /usr/share/emacs/site-lisp/elpa-src/elfeed-3.4.2/elfeed-show
/usr/share/emacs/site-lisp/elpa/elfeed-3.4.2/elfeed-db hides /usr/share/emacs/site-lisp/elpa-src/elfeed-3.4.2/elfeed-db
/usr/share/emacs/site-lisp/elpa/elfeed-3.4.2/elfeed-curl hides /usr/share/emacs/site-lisp/elpa-src/elfeed-3.4.2/elfeed-curl
/usr/share/emacs/site-lisp/elpa/elfeed-3.4.2/elfeed-log hides /usr/share/emacs/site-lisp/elpa-src/elfeed-3.4.2/elfeed-log
/usr/share/emacs/site-lisp/elpa/elfeed-3.4.2/elfeed-csv hides /usr/share/emacs/site-lisp/elpa-src/elfeed-3.4.2/elfeed-csv
/usr/share/emacs/site-lisp/elpa/elfeed-3.4.2/elfeed-autoloads hides /usr/share/emacs/site-lisp/elpa-src/elfeed-3.4.2/elfeed-autoloads
/usr/share/emacs/site-lisp/elpa/elfeed-3.4.2/xml-query hides /usr/share/emacs/site-lisp/elpa-src/elfeed-3.4.2/xml-query
/usr/share/emacs/site-lisp/elpa/elfeed-3.4.2/elfeed hides /usr/share/emacs/site-lisp/elpa-src/elfeed-3.4.2/elfeed
/usr/share/emacs/site-lisp/elpa/elm-mode-0.20.3/elm-imenu hides /usr/share/emacs/site-lisp/elpa-src/elm-mode-0.20.3/elm-imenu
/usr/share/emacs/site-lisp/elpa/elm-mode-0.20.3/elm-mode hides /usr/share/emacs/site-lisp/elpa-src/elm-mode-0.20.3/elm-mode
/usr/share/emacs/site-lisp/elpa/elm-mode-0.20.3/elm-tags hides /usr/share/emacs/site-lisp/elpa-src/elm-mode-0.20.3/elm-tags
/usr/share/emacs/site-lisp/elpa/elm-mode-0.20.3/elm-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/elm-mode-0.20.3/elm-mode-autoloads
/usr/share/emacs/site-lisp/elpa/elm-mode-0.20.3/elm-interactive hides /usr/share/emacs/site-lisp/elpa-src/elm-mode-0.20.3/elm-interactive
/usr/share/emacs/site-lisp/elpa/elm-mode-0.20.3/elm-format hides /usr/share/emacs/site-lisp/elpa-src/elm-mode-0.20.3/elm-format
/usr/share/emacs/site-lisp/elpa/elm-mode-0.20.3/elm-util hides /usr/share/emacs/site-lisp/elpa-src/elm-mode-0.20.3/elm-util
/usr/share/emacs/site-lisp/elpa/elm-mode-0.20.3/elm-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/elm-mode-0.20.3/elm-mode-pkg
/usr/share/emacs/site-lisp/elpa/elm-mode-0.20.3/elm-indent hides /usr/share/emacs/site-lisp/elpa-src/elm-mode-0.20.3/elm-indent
/usr/share/emacs/site-lisp/elpa/elm-mode-0.20.3/elm-font-lock hides /usr/share/emacs/site-lisp/elpa-src/elm-mode-0.20.3/elm-font-lock
/usr/share/emacs/site-lisp/elpa/epl-0.9/epl-autoloads hides /usr/share/emacs/site-lisp/elpa-src/epl-0.9/epl-autoloads
/usr/share/emacs/site-lisp/elpa/epl-0.9/epl-pkg hides /usr/share/emacs/site-lisp/elpa-src/epl-0.9/epl-pkg
/usr/share/emacs/site-lisp/elpa/epl-0.9/epl hides /usr/share/emacs/site-lisp/elpa-src/epl-0.9/epl
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-ruby-on-rails hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-ruby-on-rails
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-python hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-python
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-clojure-leiningen hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-clojure-leiningen
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-javascript-grunt hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-javascript-grunt
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-tests hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-tests
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-android hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-android
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-extras hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-extras
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-javascript-bower hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-javascript-bower
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-pkg hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-pkg
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-arduino hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-arduino
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-javascript-npm hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-javascript-npm
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-ruby hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-ruby
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-php-composer hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-php-composer
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-autoloads hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-autoloads
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject-perl hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject-perl
/usr/share/emacs/site-lisp/elpa/eproject-1.5/eproject hides /usr/share/emacs/site-lisp/elpa-src/eproject-1.5/eproject
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-core hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-core
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-types hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-types
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-vars hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-vars
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-commands hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-commands
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-jumps hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-jumps
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-integration hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-integration
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-keybindings hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-keybindings
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-pkg hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-pkg
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-ex hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-ex
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-common hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-common
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-digraphs hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-digraphs
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-states hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-states
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-macros hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-macros
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-command-window hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-command-window
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-search hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-search
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-maps hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-maps
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-autoloads hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-autoloads
/usr/share/emacs/site-lisp/elpa/evil-1.14.2/evil-repeat hides /usr/share/emacs/site-lisp/elpa-src/evil-1.14.2/evil-repeat
/usr/share/emacs/site-lisp/elpa/exec-path-from-shell-2.2/exec-path-from-shell-autoloads hides /usr/share/emacs/site-lisp/elpa-src/exec-path-from-shell-2.2/exec-path-from-shell-autoloads
/usr/share/emacs/site-lisp/elpa/exec-path-from-shell-2.2/exec-path-from-shell hides /usr/share/emacs/site-lisp/elpa-src/exec-path-from-shell-2.2/exec-path-from-shell
/usr/share/emacs/site-lisp/elpa/exec-path-from-shell-2.2/exec-path-from-shell-pkg hides /usr/share/emacs/site-lisp/elpa-src/exec-path-from-shell-2.2/exec-path-from-shell-pkg
/usr/share/emacs/site-lisp/elpa/f-0.21.0/f-autoloads hides /usr/share/emacs/site-lisp/elpa-src/f-0.21.0/f-autoloads
/usr/share/emacs/site-lisp/elpa/f-0.21.0/f hides /usr/share/emacs/site-lisp/elpa-src/f-0.21.0/f
/usr/share/emacs/site-lisp/elpa/f-0.21.0/f-pkg hides /usr/share/emacs/site-lisp/elpa-src/f-0.21.0/f-pkg
/usr/share/emacs/site-lisp/elpa/f-0.21.0/f-shortdoc hides /usr/share/emacs/site-lisp/elpa-src/f-0.21.0/f-shortdoc
/usr/share/emacs/site-lisp/elpa/folding-20240308.333/folding hides /usr/share/emacs/site-lisp/elpa-src/folding-20240308.333/folding
/usr/share/emacs/site-lisp/elpa/folding-20240308.333/folding-pkg hides /usr/share/emacs/site-lisp/elpa-src/folding-20240308.333/folding-pkg
/usr/share/emacs/site-lisp/elpa/folding-20240308.333/folding-autoloads hides /usr/share/emacs/site-lisp/elpa-src/folding-20240308.333/folding-autoloads
/usr/share/emacs/site-lisp/elpa/format-all-0.6.0/format-all-pkg hides /usr/share/emacs/site-lisp/elpa-src/format-all-0.6.0/format-all-pkg
/usr/share/emacs/site-lisp/elpa/format-all-0.6.0/format-all-autoloads hides /usr/share/emacs/site-lisp/elpa-src/format-all-0.6.0/format-all-autoloads
/usr/share/emacs/site-lisp/elpa/format-all-0.6.0/format-all hides /usr/share/emacs/site-lisp/elpa-src/format-all-0.6.0/format-all
/usr/share/emacs/site-lisp/elpa/fountain-mode-3.7.1/fountain-theme hides /usr/share/emacs/site-lisp/elpa-src/fountain-mode-3.7.1/fountain-theme
/usr/share/emacs/site-lisp/elpa/fountain-mode-3.7.1/fountain-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/fountain-mode-3.7.1/fountain-mode-pkg
/usr/share/emacs/site-lisp/elpa/fountain-mode-3.7.1/fountain-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/fountain-mode-3.7.1/fountain-mode-autoloads
/usr/share/emacs/site-lisp/elpa/fountain-mode-3.7.1/fountain-mode hides /usr/share/emacs/site-lisp/elpa-src/fountain-mode-3.7.1/fountain-mode
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-mode hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-mode
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-eval hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-eval
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-reload hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-reload
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-connection hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-connection
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-edit hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-edit
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-popup hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-popup
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-completion hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-completion
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-compile hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-compile
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-doc hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-doc
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-repl hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-repl
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-capf hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-capf
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-impl hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-impl
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-custom hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-custom
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-log hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-log
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-autoloads hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-autoloads
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-pkg hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-pkg
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-menu hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-menu
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-image hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-image
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-autodoc hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-autodoc
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-xref hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-xref
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-table hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-table
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-debug hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-debug
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-base hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-base
/usr/share/emacs/site-lisp/elpa/geiser-0.31.1/geiser-syntax hides /usr/share/emacs/site-lisp/elpa-src/geiser-0.31.1/geiser-syntax
/usr/share/emacs/site-lisp/elpa/geiser-guile-0.28.3/geiser-guile-pkg hides /usr/share/emacs/site-lisp/elpa-src/geiser-guile-0.28.3/geiser-guile-pkg
/usr/share/emacs/site-lisp/elpa/geiser-guile-0.28.3/geiser-guile hides /usr/share/emacs/site-lisp/elpa-src/geiser-guile-0.28.3/geiser-guile
/usr/share/emacs/site-lisp/elpa/geiser-guile-0.28.3/geiser-guile-autoloads hides /usr/share/emacs/site-lisp/elpa-src/geiser-guile-0.28.3/geiser-guile-autoloads
/usr/share/emacs/site-lisp/elpa/geiser-racket-0.16/geiser-racket-pkg hides /usr/share/emacs/site-lisp/elpa-src/geiser-racket-0.16/geiser-racket-pkg
/usr/share/emacs/site-lisp/elpa/geiser-racket-0.16/geiser-racket hides /usr/share/emacs/site-lisp/elpa-src/geiser-racket-0.16/geiser-racket
/usr/share/emacs/site-lisp/elpa/geiser-racket-0.16/geiser-racket-autoloads hides /usr/share/emacs/site-lisp/elpa-src/geiser-racket-0.16/geiser-racket-autoloads
/usr/share/emacs/site-lisp/elpa/git-modes-1.4.4/git-modes-autoloads hides /usr/share/emacs/site-lisp/elpa-src/git-modes-1.4.4/git-modes-autoloads
/usr/share/emacs/site-lisp/elpa/git-modes-1.4.4/git-modes hides /usr/share/emacs/site-lisp/elpa-src/git-modes-1.4.4/git-modes
/usr/share/emacs/site-lisp/elpa/git-modes-1.4.4/git-modes-pkg hides /usr/share/emacs/site-lisp/elpa-src/git-modes-1.4.4/git-modes-pkg
/usr/share/emacs/site-lisp/elpa/gitattributes-mode-1.4.4/gitattributes-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/gitattributes-mode-1.4.4/gitattributes-mode-pkg
/usr/share/emacs/site-lisp/elpa/gitattributes-mode-1.4.4/gitattributes-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/gitattributes-mode-1.4.4/gitattributes-mode-autoloads
/usr/share/emacs/site-lisp/elpa/gitattributes-mode-1.4.4/gitattributes-mode hides /usr/share/emacs/site-lisp/elpa-src/gitattributes-mode-1.4.4/gitattributes-mode
/usr/share/emacs/site-lisp/elpa/gitconfig-mode-1.4.4/gitconfig-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/gitconfig-mode-1.4.4/gitconfig-mode-autoloads
/usr/share/emacs/site-lisp/elpa/gitconfig-mode-1.4.4/gitconfig-mode hides /usr/share/emacs/site-lisp/elpa-src/gitconfig-mode-1.4.4/gitconfig-mode
/usr/share/emacs/site-lisp/elpa/gitconfig-mode-1.4.4/gitconfig-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/gitconfig-mode-1.4.4/gitconfig-mode-pkg
/usr/share/emacs/site-lisp/elpa/gitignore-mode-1.4.4/gitignore-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/gitignore-mode-1.4.4/gitignore-mode-autoloads
/usr/share/emacs/site-lisp/elpa/gitignore-mode-1.4.4/gitignore-mode hides /usr/share/emacs/site-lisp/elpa-src/gitignore-mode-1.4.4/gitignore-mode
/usr/share/emacs/site-lisp/elpa/gitignore-mode-1.4.4/gitignore-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/gitignore-mode-1.4.4/gitignore-mode-pkg
/usr/share/emacs/site-lisp/elpa/gitlab-ci-mode-20191022.12.4/gitlab-ci-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/gitlab-ci-mode-20191022.12.4/gitlab-ci-mode-autoloads
/usr/share/emacs/site-lisp/elpa/gitlab-ci-mode-20191022.12.4/gitlab-ci-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/gitlab-ci-mode-20191022.12.4/gitlab-ci-mode-pkg
/usr/share/emacs/site-lisp/elpa/gitlab-ci-mode-20191022.12.4/gitlab-ci-mode hides /usr/share/emacs/site-lisp/elpa-src/gitlab-ci-mode-20191022.12.4/gitlab-ci-mode
/usr/share/emacs/site-lisp/elpa/gnuplot-0.8.1/gnuplot-gui hides /usr/share/emacs/site-lisp/elpa-src/gnuplot-0.8.1/gnuplot-gui
/usr/share/emacs/site-lisp/elpa/gnuplot-0.8.1/gnuplot-context hides /usr/share/emacs/site-lisp/elpa-src/gnuplot-0.8.1/gnuplot-context
/usr/share/emacs/site-lisp/elpa/gnuplot-0.8.1/gnuplot hides /usr/share/emacs/site-lisp/elpa-src/gnuplot-0.8.1/gnuplot
/usr/share/emacs/site-lisp/elpa/debian-el-37.19/debian-autoloads hides /usr/share/emacs/site-lisp/elpa-src/gnuplot-0.8.1/debian-autoloads
/usr/share/emacs/site-lisp/elpa/gnuplot-0.8.1/gnuplot-pkg hides /usr/share/emacs/site-lisp/elpa-src/gnuplot-0.8.1/gnuplot-pkg
/usr/share/emacs/site-lisp/elpa/gnuplot-0.8.1/gnuplot-autoloads hides /usr/share/emacs/site-lisp/elpa-src/gnuplot-0.8.1/gnuplot-autoloads
/usr/share/emacs/site-lisp/elpa/go-mode-1.6.0/go-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/go-mode-1.6.0/go-mode-autoloads
/usr/share/emacs/site-lisp/elpa/go-mode-1.6.0/go-mode hides /usr/share/emacs/site-lisp/elpa-src/go-mode-1.6.0/go-mode
/usr/share/emacs/site-lisp/elpa/go-mode-1.6.0/go-guru hides /usr/share/emacs/site-lisp/elpa-src/go-mode-1.6.0/go-guru
/usr/share/emacs/site-lisp/elpa/go-mode-1.6.0/go-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/go-mode-1.6.0/go-mode-pkg
/usr/share/emacs/site-lisp/elpa/go-mode-1.6.0/go-rename hides /usr/share/emacs/site-lisp/elpa-src/go-mode-1.6.0/go-rename
/usr/share/emacs/site-lisp/elpa/goto-chg-1.7.5/goto-chg hides /usr/share/emacs/site-lisp/elpa-src/goto-chg-1.7.5/goto-chg
/usr/share/emacs/site-lisp/elpa/goto-chg-1.7.5/goto-chg-pkg hides /usr/share/emacs/site-lisp/elpa-src/goto-chg-1.7.5/goto-chg-pkg
/usr/share/emacs/site-lisp/elpa/goto-chg-1.7.5/goto-chg-autoloads hides /usr/share/emacs/site-lisp/elpa-src/goto-chg-1.7.5/goto-chg-autoloads
/usr/share/emacs/site-lisp/elpa/graphviz-dot-mode-0.4.2/graphviz-dot-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/graphviz-dot-mode-0.4.2/graphviz-dot-mode-pkg
/usr/share/emacs/site-lisp/elpa/graphviz-dot-mode-0.4.2/graphviz-dot-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/graphviz-dot-mode-0.4.2/graphviz-dot-mode-autoloads
/usr/share/emacs/site-lisp/elpa/graphviz-dot-mode-0.4.2/graphviz-dot-mode hides /usr/share/emacs/site-lisp/elpa-src/graphviz-dot-mode-0.4.2/graphviz-dot-mode
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-svg hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-svg
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-mode-pkg
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-utils hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-utils
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-sort-imports hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-sort-imports
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/ghc-core hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/ghc-core
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-compile hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-compile
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-load hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-load
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-decl-scan hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-decl-scan
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-c2hs hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-c2hs
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-session hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-session
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-string hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-string
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-collapse hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-collapse
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-lexeme hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-lexeme
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-navigate-imports hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-navigate-imports
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-align-imports hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-align-imports
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-process hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-process
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-interactive-mode hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-interactive-mode
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-customize hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-customize
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-commands hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-commands
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-menu hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-menu
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-doc hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-doc
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-move-nested hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-move-nested
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/ghci-script-mode hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/ghci-script-mode
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/w3m-haddock hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/w3m-haddock
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/highlight-uses-mode hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/highlight-uses-mode
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-debug hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-debug
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-modules hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-modules
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-indentation hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-indentation
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-hoogle hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-hoogle
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-repl hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-repl
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-sandbox hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-sandbox
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-completions hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-completions
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-indent hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-indent
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-mode hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-mode
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-complete-module hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-complete-module
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-mode-autoloads
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/inf-haskell hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/inf-haskell
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-unicode-input-method hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-unicode-input-method
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-presentation-mode hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-presentation-mode
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-ghc-support hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-ghc-support
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-cabal hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-cabal
/usr/share/emacs/site-lisp/elpa/haskell-mode-17.5/haskell-font-lock hides /usr/share/emacs/site-lisp/elpa-src/haskell-mode-17.5/haskell-font-lock
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-pkg hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-pkg
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-fd hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-fd
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-man hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-man
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-global-bindings hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-global-bindings
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-net hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-net
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-buffers hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-buffers
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-external hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-external
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-for-files hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-for-files
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-elisp hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-elisp
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-find hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-find
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-imenu hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-imenu
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-tags hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-tags
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-autoloads hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-autoloads
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-types hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-types
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-easymenu hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-easymenu
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-info hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-info
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-dabbrev hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-dabbrev
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-sys hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-sys
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-packages hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-packages
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-locate hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-locate
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-utils hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-utils
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-eshell hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-eshell
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-semantic hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-semantic
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-help hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-help
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-ring hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-ring
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-color hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-color
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-files hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-files
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-grep hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-grep
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-regexp hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-regexp
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-x-files hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-x-files
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-epa hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-epa
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-font hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-font
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-command hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-command
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-misc hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-misc
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-occur hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-occur
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-bookmark hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-bookmark
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-id-utils hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-id-utils
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-mode hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-mode
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-adaptive hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-adaptive
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-x-icons hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-x-icons
/usr/share/emacs/site-lisp/elpa/helm-4.0.3/helm-eval hides /usr/share/emacs/site-lisp/elpa-src/helm-4.0.3/helm-eval
/usr/share/emacs/site-lisp/elpa/helm-core-4.0.3/helm-core-autoloads hides /usr/share/emacs/site-lisp/elpa-src/helm-core-4.0.3/helm-core-autoloads
/usr/share/emacs/site-lisp/elpa/helm-core-4.0.3/helm-lib hides /usr/share/emacs/site-lisp/elpa-src/helm-core-4.0.3/helm-lib
/usr/share/emacs/site-lisp/elpa/helm-core-4.0.3/helm-core hides /usr/share/emacs/site-lisp/elpa-src/helm-core-4.0.3/helm-core
/usr/share/emacs/site-lisp/elpa/helm-core-4.0.3/helm-core-pkg hides /usr/share/emacs/site-lisp/elpa-src/helm-core-4.0.3/helm-core-pkg
/usr/share/emacs/site-lisp/elpa/helm-core-4.0.3/helm-multi-match hides /usr/share/emacs/site-lisp/elpa-src/helm-core-4.0.3/helm-multi-match
/usr/share/emacs/site-lisp/elpa/helm-core-4.0.3/helm-source hides /usr/share/emacs/site-lisp/elpa-src/helm-core-4.0.3/helm-source
/usr/share/emacs/site-lisp/elpa/ht-2.3/ht-pkg hides /usr/share/emacs/site-lisp/elpa-src/ht-2.3/ht-pkg
/usr/share/emacs/site-lisp/elpa/ht-2.3/ht hides /usr/share/emacs/site-lisp/elpa-src/ht-2.3/ht
/usr/share/emacs/site-lisp/elpa/ht-2.3/ht-autoloads hides /usr/share/emacs/site-lisp/elpa-src/ht-2.3/ht-autoloads
/usr/share/emacs/site-lisp/elpa/htmlize-1.58/htmlize-autoloads hides /usr/share/emacs/site-lisp/elpa-src/htmlize-1.58/htmlize-autoloads
/usr/share/emacs/site-lisp/elpa/htmlize-1.58/htmlize-pkg hides /usr/share/emacs/site-lisp/elpa-src/htmlize-1.58/htmlize-pkg
/usr/share/emacs/site-lisp/elpa/htmlize-1.58/htmlize hides /usr/share/emacs/site-lisp/elpa-src/htmlize-1.58/htmlize
/usr/share/emacs/site-lisp/elpa/hydra-0.15.0/hydra-examples hides /usr/share/emacs/site-lisp/elpa-src/hydra-0.15.0/hydra-examples
/usr/share/emacs/site-lisp/elpa/hydra-0.15.0/hydra-ox hides /usr/share/emacs/site-lisp/elpa-src/hydra-0.15.0/hydra-ox
/usr/share/emacs/site-lisp/elpa/hydra-0.15.0/hydra hides /usr/share/emacs/site-lisp/elpa-src/hydra-0.15.0/hydra
/usr/share/emacs/site-lisp/elpa/hydra-0.15.0/hydra-autoloads hides /usr/share/emacs/site-lisp/elpa-src/hydra-0.15.0/hydra-autoloads
/usr/share/emacs/site-lisp/elpa/hydra-0.15.0/hydra-pkg hides /usr/share/emacs/site-lisp/elpa-src/hydra-0.15.0/hydra-pkg
/usr/share/emacs/site-lisp/elpa/imenu-list-0.9/imenu-list-autoloads hides /usr/share/emacs/site-lisp/elpa-src/imenu-list-0.9/imenu-list-autoloads
/usr/share/emacs/site-lisp/elpa/imenu-list-0.9/imenu-list hides /usr/share/emacs/site-lisp/elpa-src/imenu-list-0.9/imenu-list
/usr/share/emacs/site-lisp/elpa/imenu-list-0.9/imenu-list-pkg hides /usr/share/emacs/site-lisp/elpa-src/imenu-list-0.9/imenu-list-pkg
/usr/share/emacs/site-lisp/elpa/inform-mode-1.6.2/inform-mode hides /usr/share/emacs/site-lisp/elpa-src/inform-mode-1.6.2/inform-mode
/usr/share/emacs/site-lisp/elpa/inform-mode-1.6.2/inform-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/inform-mode-1.6.2/inform-mode-pkg
/usr/share/emacs/site-lisp/elpa/inform-mode-1.6.2/inform-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/inform-mode-1.6.2/inform-mode-autoloads
/usr/share/emacs/site-lisp/elpa/inheritenv-0.2/inheritenv hides /usr/share/emacs/site-lisp/elpa-src/inheritenv-0.2/inheritenv
/usr/share/emacs/site-lisp/elpa/inheritenv-0.2/inheritenv-tests hides /usr/share/emacs/site-lisp/elpa-src/inheritenv-0.2/inheritenv-tests
/usr/share/emacs/site-lisp/elpa/inheritenv-0.2/inheritenv-pkg hides /usr/share/emacs/site-lisp/elpa-src/inheritenv-0.2/inheritenv-pkg
/usr/share/emacs/site-lisp/elpa/inheritenv-0.2/inheritenv-autoloads hides /usr/share/emacs/site-lisp/elpa-src/inheritenv-0.2/inheritenv-autoloads
/usr/share/emacs/site-lisp/elpa/initsplit-1.8/initsplit-pkg hides /usr/share/emacs/site-lisp/elpa-src/initsplit-1.8/initsplit-pkg
/usr/share/emacs/site-lisp/elpa/initsplit-1.8/initsplit hides /usr/share/emacs/site-lisp/elpa-src/initsplit-1.8/initsplit
/usr/share/emacs/site-lisp/elpa/initsplit-1.8/initsplit-autoloads hides /usr/share/emacs/site-lisp/elpa-src/initsplit-1.8/initsplit-autoloads
/usr/share/emacs/site-lisp/elpa/initsplit-1.8/initsplit-test hides /usr/share/emacs/site-lisp/elpa-src/initsplit-1.8/initsplit-test
/usr/share/emacs/site-lisp/elpa/jinja2-mode-0.2/jinja2-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/jinja2-mode-0.2/jinja2-mode-pkg
/usr/share/emacs/site-lisp/elpa/jinja2-mode-0.2/jinja2-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/jinja2-mode-0.2/jinja2-mode-autoloads
/usr/share/emacs/site-lisp/elpa/jinja2-mode-0.2/jinja2-mode hides /usr/share/emacs/site-lisp/elpa-src/jinja2-mode-0.2/jinja2-mode
/usr/share/emacs/site-lisp/elpa/js2-mode-20231224/js2-imenu-extras hides /usr/share/emacs/site-lisp/elpa-src/js2-mode-20231224/js2-imenu-extras
/usr/share/emacs/site-lisp/elpa/js2-mode-20231224/js2-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/js2-mode-20231224/js2-mode-pkg
/usr/share/emacs/site-lisp/elpa/js2-mode-20231224/js2-mode hides /usr/share/emacs/site-lisp/elpa-src/js2-mode-20231224/js2-mode
/usr/share/emacs/site-lisp/elpa/js2-mode-20231224/js2-old-indent hides /usr/share/emacs/site-lisp/elpa-src/js2-mode-20231224/js2-old-indent
/usr/share/emacs/site-lisp/elpa/js2-mode-20231224/js2-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/js2-mode-20231224/js2-mode-autoloads
/usr/share/emacs/site-lisp/elpa/kivy-mode-0.1.0/kivy-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/kivy-mode-0.1.0/kivy-mode-pkg
/usr/share/emacs/site-lisp/elpa/kivy-mode-0.1.0/kivy-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/kivy-mode-0.1.0/kivy-mode-autoloads
/usr/share/emacs/site-lisp/elpa/kivy-mode-0.1.0/kivy-mode hides /usr/share/emacs/site-lisp/elpa-src/kivy-mode-0.1.0/kivy-mode
/usr/share/emacs/site-lisp/elpa/kotlin-mode-20230123/kotlin-mode-lexer hides /usr/share/emacs/site-lisp/elpa-src/kotlin-mode-20230123/kotlin-mode-lexer
/usr/share/emacs/site-lisp/elpa/kotlin-mode-20230123/kotlin-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/kotlin-mode-20230123/kotlin-mode-autoloads
/usr/share/emacs/site-lisp/elpa/kotlin-mode-20230123/kotlin-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/kotlin-mode-20230123/kotlin-mode-pkg
/usr/share/emacs/site-lisp/elpa/kotlin-mode-20230123/kotlin-mode hides /usr/share/emacs/site-lisp/elpa-src/kotlin-mode-20230123/kotlin-mode
/usr/share/emacs/site-lisp/elpa/kotlin-mode-20230123/kotlin-mode-indent hides /usr/share/emacs/site-lisp/elpa-src/kotlin-mode-20230123/kotlin-mode-indent
/usr/share/emacs/site-lisp/elpa/language-id-0.20/language-id hides /usr/share/emacs/site-lisp/elpa-src/language-id-0.20/language-id
/usr/share/emacs/site-lisp/elpa/language-id-0.20/language-id-pkg hides /usr/share/emacs/site-lisp/elpa-src/language-id-0.20/language-id-pkg
/usr/share/emacs/site-lisp/elpa/language-id-0.20/language-id-autoloads hides /usr/share/emacs/site-lisp/elpa-src/language-id-0.20/language-id-autoloads
/usr/share/emacs/site-lisp/elpa/let-alist-1.0.6/let-alist hides /usr/share/emacs/site-lisp/elpa-src/let-alist-1.0.6/let-alist
/usr/share/emacs/site-lisp/elpa/let-alist-1.0.6/let-alist-pkg hides /usr/share/emacs/site-lisp/elpa-src/let-alist-1.0.6/let-alist-pkg
/usr/share/emacs/site-lisp/elpa/let-alist-1.0.6/let-alist-autoloads hides /usr/share/emacs/site-lisp/elpa-src/let-alist-1.0.6/let-alist-autoloads
/usr/share/emacs/site-lisp/elpa/llama-1.0.0/llama-test hides /usr/share/emacs/site-lisp/elpa-src/llama-1.0.0/llama-test
/usr/share/emacs/site-lisp/elpa/llama-1.0.0/llama-pkg hides /usr/share/emacs/site-lisp/elpa-src/llama-1.0.0/llama-pkg
/usr/share/emacs/site-lisp/elpa/llama-1.0.0/llama-autoloads hides /usr/share/emacs/site-lisp/elpa-src/llama-1.0.0/llama-autoloads
/usr/share/emacs/site-lisp/elpa/llama-1.0.0/llama hides /usr/share/emacs/site-lisp/elpa-src/llama-1.0.0/llama
/usr/share/emacs/site-lisp/elpa/lua-mode-20221027/init-tryout hides /usr/share/emacs/site-lisp/elpa-src/lua-mode-20221027/init-tryout
/usr/share/emacs/site-lisp/elpa/lua-mode-20221027/lua-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/lua-mode-20221027/lua-mode-pkg
/usr/share/emacs/site-lisp/elpa/lua-mode-20221027/lua-mode hides /usr/share/emacs/site-lisp/elpa-src/lua-mode-20221027/lua-mode
/usr/share/emacs/site-lisp/elpa/lua-mode-20221027/lua-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/lua-mode-20221027/lua-mode-autoloads
/usr/share/emacs/site-lisp/elpa/lv-0.15.0/lv-autoloads hides /usr/share/emacs/site-lisp/elpa-src/lv-0.15.0/lv-autoloads
/usr/share/emacs/site-lisp/elpa/lv-0.15.0/lv hides /usr/share/emacs/site-lisp/elpa-src/lv-0.15.0/lv
/usr/share/emacs/site-lisp/elpa/lv-0.15.0/lv-pkg hides /usr/share/emacs/site-lisp/elpa-src/lv-0.15.0/lv-pkg
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-bundle hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-bundle
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-fetch hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-fetch
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-sparse-checkout hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-sparse-checkout
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-autorevert hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-autorevert
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-bisect hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-bisect
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-status hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-status
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-reflog hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-reflog
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-pkg hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-pkg
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-merge hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-merge
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-apply hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-apply
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-transient hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-transient
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-diff hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-diff
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-reset hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-reset
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/git-commit hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/git-commit
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-git hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-git
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-commit hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-commit
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-margin hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-margin
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-gitignore hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-gitignore
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-stash hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-stash
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-mode hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-mode
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/git-rebase hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/git-rebase
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-process hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-process
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-repos hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-repos
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-worktree hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-worktree
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-remote hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-remote
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-branch hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-branch
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-pull hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-pull
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-tag hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-tag
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-wip hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-wip
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-base hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-base
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-notes hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-notes
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-sequence hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-sequence
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-core hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-core
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-clone hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-clone
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-patch hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-patch
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-autoloads hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-autoloads
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-subtree hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-subtree
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-log hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-log
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-files hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-files
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-refs hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-refs
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-extras hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-extras
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-blame hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-blame
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-ediff hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-ediff
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-push hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-push
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-bookmark hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-bookmark
/usr/share/emacs/site-lisp/elpa/magit-4.3.8/magit-submodule hides /usr/share/emacs/site-lisp/elpa-src/magit-4.3.8/magit-submodule
/usr/share/emacs/site-lisp/elpa/magit-section-4.3.8/magit-section-pkg hides /usr/share/emacs/site-lisp/elpa-src/magit-section-4.3.8/magit-section-pkg
/usr/share/emacs/site-lisp/elpa/magit-section-4.3.8/magit-section-autoloads hides /usr/share/emacs/site-lisp/elpa-src/magit-section-4.3.8/magit-section-autoloads
/usr/share/emacs/site-lisp/elpa/magit-section-4.3.8/magit-section hides /usr/share/emacs/site-lisp/elpa-src/magit-section-4.3.8/magit-section
/usr/share/emacs/site-lisp/elpa/markdown-mode-2.7/markdown-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/markdown-mode-2.7/markdown-mode-autoloads
/usr/share/emacs/site-lisp/elpa/markdown-mode-2.7/markdown-mode hides /usr/share/emacs/site-lisp/elpa-src/markdown-mode-2.7/markdown-mode
/usr/share/emacs/site-lisp/elpa/markdown-mode-2.7/markdown-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/markdown-mode-2.7/markdown-mode-pkg
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-iso hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-iso
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-tl hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-tl
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-discover hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-discover
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-pkg hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-pkg
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-transient hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-transient
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-search hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-search
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-client hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-client
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-auth hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-auth
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-http hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-http
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-toot hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-toot
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-media hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-media
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-views hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-views
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-profile hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-profile
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-widget hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-widget
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-autoloads hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-autoloads
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-inspect hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-inspect
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-notifications hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-notifications
/usr/share/emacs/site-lisp/elpa/mastodon-2.0.2/mastodon-async hides /usr/share/emacs/site-lisp/elpa-src/mastodon-2.0.2/mastodon-async
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/semantic-matlab hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/semantic-matlab
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-org hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-org
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-netshell hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-netshell
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-cgen hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-cgen
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/company-matlab-shell hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/company-matlab-shell
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/tlc hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/tlc
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-scan hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-scan
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-shell hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-shell
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-mode-autoloads
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/mlgud hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/mlgud
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-shell-gud hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-shell-gud
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-mode-pkg
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-compat hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-compat
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-topic hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-topic
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/mlint hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/mlint
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-ccount hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-ccount
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-complete hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-complete
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-mode hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-mode
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-syntax hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-syntax
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/semanticdb-matlab hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/semanticdb-matlab
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/matlab-sections hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/matlab-sections
/usr/share/emacs/site-lisp/elpa/matlab-mode-6.3/linemark hides /usr/share/emacs/site-lisp/elpa-src/matlab-mode-6.3/linemark
/usr/share/emacs/site-lisp/elpa/meson-mode-0.2/meson-mode hides /usr/share/emacs/site-lisp/elpa-src/meson-mode-0.2/meson-mode
/usr/share/emacs/site-lisp/elpa/meson-mode-0.2/meson-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/meson-mode-0.2/meson-mode-pkg
/usr/share/emacs/site-lisp/elpa/meson-mode-0.2/utils hides /usr/share/emacs/site-lisp/elpa-src/meson-mode-0.2/utils
/usr/share/emacs/site-lisp/elpa/meson-mode-0.2/meson-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/meson-mode-0.2/meson-mode-autoloads
/usr/share/emacs/site-lisp/elpa/mutt-alias-1.4/mutt-alias hides /usr/share/emacs/site-lisp/elpa-src/mutt-alias-1.4/mutt-alias
/usr/share/emacs/site-lisp/elpa/mutt-alias-1.4/mutt-alias-autoloads hides /usr/share/emacs/site-lisp/elpa-src/mutt-alias-1.4/mutt-alias-autoloads
/usr/share/emacs/site-lisp/elpa/mutt-alias-1.4/mutt-alias-pkg hides /usr/share/emacs/site-lisp/elpa-src/mutt-alias-1.4/mutt-alias-pkg
/usr/share/emacs/site-lisp/elpa/muttrc-mode-1.2.1/muttrc-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/muttrc-mode-1.2.1/muttrc-mode-pkg
/usr/share/emacs/site-lisp/elpa/muttrc-mode-1.2.1/muttrc-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/muttrc-mode-1.2.1/muttrc-mode-autoloads
/usr/share/emacs/site-lisp/elpa/muttrc-mode-1.2.1/muttrc-mode hides /usr/share/emacs/site-lisp/elpa-src/muttrc-mode-1.2.1/muttrc-mode
/usr/share/emacs/site-lisp/elpa/nginx-mode-1.1.10/nginx-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/nginx-mode-1.1.10/nginx-mode-pkg
/usr/share/emacs/site-lisp/elpa/nginx-mode-1.1.10/nginx-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/nginx-mode-1.1.10/nginx-mode-autoloads
/usr/share/emacs/site-lisp/elpa/nginx-mode-1.1.10/nginx-mode hides /usr/share/emacs/site-lisp/elpa-src/nginx-mode-1.1.10/nginx-mode
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-draft hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-draft
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-compat hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-compat
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-parser hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-parser
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-hello hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-hello
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-crypto hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-crypto
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-print hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-print
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-mua hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-mua
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-wash hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-wash
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-tag hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-tag
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-autoloads hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-autoloads
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/coolj hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/coolj
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-address hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-address
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-maildir-fcc hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-maildir-fcc
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-lib hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-lib
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-message hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-message
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-tree hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-tree
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-show hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-show
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-pkg hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-pkg
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-version hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-version
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-jump hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-jump
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-query hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-query
/usr/share/emacs/site-lisp/elpa/notmuch-0.39/notmuch-company hides /usr/share/emacs/site-lisp/elpa-src/notmuch-0.39/notmuch-company
/usr/share/emacs/site-lisp/elpa/oauth2-0.17/oauth2-autoloads hides /usr/share/emacs/site-lisp/elpa-src/oauth2-0.17/oauth2-autoloads
/usr/share/emacs/site-lisp/elpa/oauth2-0.17/oauth2-pkg hides /usr/share/emacs/site-lisp/elpa-src/oauth2-0.17/oauth2-pkg
/home/manphiz/Projects/debian-packaging/emacs-oauth2/oauth2 hides /usr/share/emacs/site-lisp/elpa-src/oauth2-0.17/oauth2
/home/manphiz/Projects/debian-packaging/emacs-oauth2/oauth2-tests hides /usr/share/emacs/site-lisp/elpa-src/oauth2-0.17/oauth2-tests
/usr/share/emacs/site-lisp/elpa/ol-notmuch-2.1.1/ol-notmuch-autoloads hides /usr/share/emacs/site-lisp/elpa-src/ol-notmuch-2.1.1/ol-notmuch-autoloads
/usr/share/emacs/site-lisp/elpa/ol-notmuch-2.1.1/ol-notmuch hides /usr/share/emacs/site-lisp/elpa-src/ol-notmuch-2.1.1/ol-notmuch
/usr/share/emacs/site-lisp/elpa/ol-notmuch-2.1.1/ol-notmuch-pkg hides /usr/share/emacs/site-lisp/elpa-src/ol-notmuch-2.1.1/ol-notmuch-pkg
/usr/share/emacs/site-lisp/elpa/olivetti-2.0.7/olivetti-pkg hides /usr/share/emacs/site-lisp/elpa-src/olivetti-2.0.7/olivetti-pkg
/usr/share/emacs/site-lisp/elpa/olivetti-2.0.7/olivetti-autoloads hides /usr/share/emacs/site-lisp/elpa-src/olivetti-2.0.7/olivetti-autoloads
/usr/share/emacs/site-lisp/elpa/olivetti-2.0.7/olivetti hides /usr/share/emacs/site-lisp/elpa-src/olivetti-2.0.7/olivetti
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-fortran hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-fortran
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-plot hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-plot
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-eval hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-eval
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-comint hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-comint
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-tempo hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-tempo
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-python hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-python
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-man hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox-man
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-org hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox-org
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-lisp hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-lisp
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-mouse hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-mouse
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-ditaa hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-ditaa
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-clojure hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-clojure
/usr/share/emacs/site-lisp/elpa/org-9.7.29/oc-csl hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/oc-csl
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-doi hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-doi
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-pkg hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-pkg
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-lob hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-lob
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-autoloads hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-autoloads
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-emacs-lisp hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-emacs-lisp
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-footnote hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-footnote
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-persist hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-persist
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-pcomplete hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-pcomplete
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-scheme hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-scheme
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-haskell hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-haskell
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-calc hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-calc
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-js hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-js
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-timer hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-timer
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-shell hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-shell
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-w3m hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-w3m
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-version hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-version
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-lua hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-lua
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-html hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox-html
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-gnuplot hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-gnuplot
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-irc hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-irc
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-julia hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-julia
/usr/share/emacs/site-lisp/elpa/org-9.7.29/oc hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/oc
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-attach-git hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-attach-git
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-goto hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-goto
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-beamer hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox-beamer
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-sqlite hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-sqlite
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-latex hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox-latex
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-loaddefs hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-loaddefs
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-bbdb hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-bbdb
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-compat hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-compat
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-refile hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-refile
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-sed hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-sed
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-css hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-css
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-clock hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-clock
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-java hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-java
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-src hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-src
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-element hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-element
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-odt hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox-odt
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-keys hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-keys
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-exp hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-exp
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-id hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-id
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-fold-core hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-fold-core
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-docview hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-docview
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-maxima hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-maxima
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-table hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-table
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-protocol hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-protocol
/usr/share/emacs/site-lisp/elpa/org-9.7.29/oc-basic hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/oc-basic
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-tangle hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-tangle
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-element-ast hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-element-ast
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-macro hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-macro
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-macs hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-macs
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-C hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-C
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-bibtex hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-bibtex
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-cycle hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-cycle
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-capture hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-capture
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-rmail hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-rmail
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-koma-letter hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox-koma-letter
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-eshell hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-eshell
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-agenda hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-agenda
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-forth hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-forth
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-eww hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-eww
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-inlinetask hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-inlinetask
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-latex hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-latex
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-mobile hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-mobile
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-lilypond hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-lilypond
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-screen hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-screen
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-fold hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-fold
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-ascii hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox-ascii
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-datetree hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-datetree
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-faces hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-faces
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-gnus hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-gnus
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-R hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-R
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-matlab hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-matlab
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-awk hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-awk
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-info hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-info
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-duration hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-duration
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-crypt hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-crypt
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-texinfo hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox-texinfo
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-perl hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-perl
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-plantuml hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-plantuml
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-list hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-list
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-attach hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-attach
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-octave hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-octave
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-mhe hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-mhe
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-lint hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-lint
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-core hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-core
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-ruby hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-ruby
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-dot hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-dot
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-feed hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-feed
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-processing hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-processing
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-eshell hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-eshell
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-habit hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-habit
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-md hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox-md
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-ref hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-ref
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-sass hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-sass
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-org hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-org
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-indent hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-indent
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-ctags hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-ctags
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-entities hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-entities
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-makefile hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-makefile
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-ocaml hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-ocaml
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-man hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ol-man
/usr/share/emacs/site-lisp/elpa/org-9.7.29/oc-biblatex hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/oc-biblatex
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-archive hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-archive
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-num hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-num
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-table hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-table
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-sql hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-sql
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-icalendar hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox-icalendar
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-groovy hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ob-groovy
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-colview hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/org-colview
/usr/share/emacs/site-lisp/elpa/org-9.7.29/oc-natbib hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/oc-natbib
/usr/share/emacs/site-lisp/elpa/org-9.7.29/oc-bibtex hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/oc-bibtex
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-publish hides /usr/share/emacs/site-lisp/elpa-src/org-9.7.29/ox-publish
/usr/share/emacs/site-lisp/elpa/org-drill-2.7.0/org-drill hides /usr/share/emacs/site-lisp/elpa-src/org-drill-2.7.0/org-drill
/usr/share/emacs/site-lisp/elpa/org-drill-2.7.0/org-drill-autoloads hides /usr/share/emacs/site-lisp/elpa-src/org-drill-2.7.0/org-drill-autoloads
/usr/share/emacs/site-lisp/elpa/org-drill-2.7.0/org-drill-pkg hides /usr/share/emacs/site-lisp/elpa-src/org-drill-2.7.0/org-drill-pkg
/usr/share/emacs/site-lisp/elpa/package-lint-0.26/package-lint-pkg hides /usr/share/emacs/site-lisp/elpa-src/package-lint-0.26/package-lint-pkg
/usr/share/emacs/site-lisp/elpa/package-lint-0.26/package-lint hides /usr/share/emacs/site-lisp/elpa-src/package-lint-0.26/package-lint
/usr/share/emacs/site-lisp/elpa/package-lint-0.26/package-lint-autoloads hides /usr/share/emacs/site-lisp/elpa-src/package-lint-0.26/package-lint-autoloads
/usr/share/emacs/site-lisp/elpa/package-lint-flymake-0/package-lint-flymake-pkg hides /usr/share/emacs/site-lisp/elpa-src/package-lint-flymake-0/package-lint-flymake-pkg
/usr/share/emacs/site-lisp/elpa/package-lint-flymake-0/package-lint-flymake-autoloads hides /usr/share/emacs/site-lisp/elpa-src/package-lint-flymake-0/package-lint-flymake-autoloads
/usr/share/emacs/site-lisp/elpa/package-lint-flymake-0/package-lint-flymake hides /usr/share/emacs/site-lisp/elpa-src/package-lint-flymake-0/package-lint-flymake
/usr/share/emacs/site-lisp/elpa/paredit-27beta/paredit-autoloads hides /usr/share/emacs/site-lisp/elpa-src/paredit-27beta/paredit-autoloads
/usr/share/emacs/site-lisp/elpa/paredit-27beta/paredit hides /usr/share/emacs/site-lisp/elpa-src/paredit-27beta/paredit
/usr/share/emacs/site-lisp/elpa/paredit-27beta/paredit-pkg hides /usr/share/emacs/site-lisp/elpa-src/paredit-27beta/paredit-pkg
/usr/share/emacs/site-lisp/elpa/persist-0.6.1/persist-autoloads hides /usr/share/emacs/site-lisp/elpa-src/persist-0.6.1/persist-autoloads
/usr/share/emacs/site-lisp/elpa/persist-0.6.1/persist-pkg hides /usr/share/emacs/site-lisp/elpa-src/persist-0.6.1/persist-pkg
/usr/share/emacs/site-lisp/elpa/persist-0.6.1/persist hides /usr/share/emacs/site-lisp/elpa-src/persist-0.6.1/persist
/usr/share/emacs/site-lisp/elpa/pfuture-1.9/pfuture-pkg hides /usr/share/emacs/site-lisp/elpa-src/pfuture-1.9/pfuture-pkg
/usr/share/emacs/site-lisp/elpa/pfuture-1.9/pfuture-autoloads hides /usr/share/emacs/site-lisp/elpa-src/pfuture-1.9/pfuture-autoloads
/usr/share/emacs/site-lisp/elpa/pfuture-1.9/pfuture hides /usr/share/emacs/site-lisp/elpa-src/pfuture-1.9/pfuture
/usr/share/emacs/site-lisp/elpa/pg-0.53/pg-geometry hides /usr/share/emacs/site-lisp/elpa-src/pg-0.53/pg-geometry
/usr/share/emacs/site-lisp/elpa/pg-0.53/pg-bm25 hides /usr/share/emacs/site-lisp/elpa-src/pg-0.53/pg-bm25
/usr/share/emacs/site-lisp/elpa/pg-0.53/pg hides /usr/share/emacs/site-lisp/elpa-src/pg-0.53/pg
/usr/share/emacs/site-lisp/elpa/pg-0.53/pg-gis hides /usr/share/emacs/site-lisp/elpa-src/pg-0.53/pg-gis
/usr/share/emacs/site-lisp/elpa/pg-0.53/pg-autoloads hides /usr/share/emacs/site-lisp/elpa-src/pg-0.53/pg-autoloads
/usr/share/emacs/site-lisp/elpa/pg-0.53/pg-lo hides /usr/share/emacs/site-lisp/elpa-src/pg-0.53/pg-lo
/usr/share/emacs/site-lisp/elpa/pg-0.53/pg-pkg hides /usr/share/emacs/site-lisp/elpa-src/pg-0.53/pg-pkg
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-align hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-align
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-complete hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-complete
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-face hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-face
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-mode-debug hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-mode-debug
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-mode-pkg
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-local-manual hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-local-manual
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-ide-phpactor hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-ide-phpactor
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-mode hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-mode
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-flymake hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-flymake
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-mode-autoloads
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-defs hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-defs
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-ide hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-ide
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-format hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-format
/usr/share/emacs/site-lisp/elpa/php-mode-1.26.1/php-project hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.26.1/php-project
/usr/share/emacs/site-lisp/elpa/pip-requirements-0.5/pip-requirements-pkg hides /usr/share/emacs/site-lisp/elpa-src/pip-requirements-0.5/pip-requirements-pkg
/usr/share/emacs/site-lisp/elpa/pip-requirements-0.5/pip-requirements-autoloads hides /usr/share/emacs/site-lisp/elpa-src/pip-requirements-0.5/pip-requirements-autoloads
/usr/share/emacs/site-lisp/elpa/pip-requirements-0.5/pip-requirements hides /usr/share/emacs/site-lisp/elpa-src/pip-requirements-0.5/pip-requirements
/usr/share/emacs/site-lisp/elpa/pkg-info-0.6/pkg-info-pkg hides /usr/share/emacs/site-lisp/elpa-src/pkg-info-0.6/pkg-info-pkg
/usr/share/emacs/site-lisp/elpa/pkg-info-0.6/pkg-info-autoloads hides /usr/share/emacs/site-lisp/elpa-src/pkg-info-0.6/pkg-info-autoloads
/usr/share/emacs/site-lisp/elpa/pkg-info-0.6/pkg-info hides /usr/share/emacs/site-lisp/elpa-src/pkg-info-0.6/pkg-info
/usr/share/emacs/site-lisp/elpa/po-mode-0.23.1/po-mode hides /usr/share/emacs/site-lisp/elpa-src/po-mode-0.23.1/po-mode
/usr/share/emacs/site-lisp/elpa/po-mode-0.23.1/po-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/po-mode-0.23.1/po-mode-autoloads
/usr/share/emacs/site-lisp/elpa/po-mode-0.23.1/po-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/po-mode-0.23.1/po-mode-pkg
/usr/share/emacs/site-lisp/elpa/pod-mode-1.3/pod-mode hides /usr/share/emacs/site-lisp/elpa-src/pod-mode-1.3/pod-mode
/usr/share/emacs/site-lisp/elpa/pod-mode-1.3/pod-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/pod-mode-1.3/pod-mode-autoloads
/usr/share/emacs/site-lisp/elpa/pod-mode-1.3/pod-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/pod-mode-1.3/pod-mode-pkg
/usr/share/emacs/site-lisp/elpa/popon-0.13/popon-pkg hides /usr/share/emacs/site-lisp/elpa-src/popon-0.13/popon-pkg
/usr/share/emacs/site-lisp/elpa/popon-0.13/popon hides /usr/share/emacs/site-lisp/elpa-src/popon-0.13/popon
/usr/share/emacs/site-lisp/elpa/popon-0.13/popon-autoloads hides /usr/share/emacs/site-lisp/elpa-src/popon-0.13/popon-autoloads
/usr/share/emacs/site-lisp/elpa/pos-tip-0.4.6snapshot/pos-tip hides /usr/share/emacs/site-lisp/elpa-src/pos-tip-0.4.6snapshot/pos-tip
/usr/share/emacs/site-lisp/elpa/pos-tip-0.4.6snapshot/pos-tip-pkg hides /usr/share/emacs/site-lisp/elpa-src/pos-tip-0.4.6snapshot/pos-tip-pkg
/usr/share/emacs/site-lisp/elpa/pos-tip-0.4.6snapshot/pos-tip-autoloads hides /usr/share/emacs/site-lisp/elpa-src/pos-tip-0.4.6snapshot/pos-tip-autoloads
/usr/share/emacs/site-lisp/elpa/posframe-1.4.4/posframe-pkg hides /usr/share/emacs/site-lisp/elpa-src/posframe-1.4.4/posframe-pkg
/usr/share/emacs/site-lisp/elpa/posframe-1.4.4/posframe-autoloads hides /usr/share/emacs/site-lisp/elpa-src/posframe-1.4.4/posframe-autoloads
/usr/share/emacs/site-lisp/elpa/posframe-1.4.4/posframe hides /usr/share/emacs/site-lisp/elpa-src/posframe-1.4.4/posframe
/usr/share/emacs/site-lisp/elpa/protobuf-mode-0.3/protobuf-mode hides /usr/share/emacs/site-lisp/elpa-src/protobuf-mode-0.3/protobuf-mode
/usr/share/emacs/site-lisp/elpa/protobuf-mode-0.3/protobuf-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/protobuf-mode-0.3/protobuf-mode-pkg
/usr/share/emacs/site-lisp/elpa/protobuf-mode-0.3/protobuf-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/protobuf-mode-0.3/protobuf-mode-autoloads
/usr/share/emacs/site-lisp/elpa/puppet-mode-0.4/puppet-mode hides /usr/share/emacs/site-lisp/elpa-src/puppet-mode-0.4/puppet-mode
/usr/share/emacs/site-lisp/elpa/puppet-mode-0.4/puppet-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/puppet-mode-0.4/puppet-mode-pkg
/usr/share/emacs/site-lisp/elpa/puppet-mode-0.4/puppet-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/puppet-mode-0.4/puppet-mode-autoloads
/usr/share/emacs/site-lisp/elpa/py-isort-2016.1/py-isort hides /usr/share/emacs/site-lisp/elpa-src/py-isort-2016.1/py-isort
/usr/share/emacs/site-lisp/elpa/py-isort-2016.1/py-isort-pkg hides /usr/share/emacs/site-lisp/elpa-src/py-isort-2016.1/py-isort-pkg
/usr/share/emacs/site-lisp/elpa/py-isort-2016.1/py-isort-autoloads hides /usr/share/emacs/site-lisp/elpa-src/py-isort-2016.1/py-isort-autoloads
/usr/share/emacs/site-lisp/elpa/pyvenv-1.21/pyvenv-pkg hides /usr/share/emacs/site-lisp/elpa-src/pyvenv-1.21/pyvenv-pkg
/usr/share/emacs/site-lisp/elpa/pyvenv-1.21/pyvenv-autoloads hides /usr/share/emacs/site-lisp/elpa-src/pyvenv-1.21/pyvenv-autoloads
/usr/share/emacs/site-lisp/elpa/pyvenv-1.21/pyvenv hides /usr/share/emacs/site-lisp/elpa-src/pyvenv-1.21/pyvenv
/usr/share/emacs/site-lisp/elpa/qml-mode-0.4/qml-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/qml-mode-0.4/qml-mode-pkg
/usr/share/emacs/site-lisp/elpa/qml-mode-0.4/qml-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/qml-mode-0.4/qml-mode-autoloads
/usr/share/emacs/site-lisp/elpa/qml-mode-0.4/qml-mode hides /usr/share/emacs/site-lisp/elpa-src/qml-mode-0.4/qml-mode
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-shell hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-shell
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-cmd hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-cmd
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-bug-report hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-bug-report
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-mode-autoloads
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-scribble hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-scribble
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-browse-url hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-browse-url
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-smart-open hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-smart-open
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-lisp-mode hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-lisp-mode
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-eldoc hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-eldoc
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-complete hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-complete
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-stepper hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-stepper
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-xp hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-xp
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-describe hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-describe
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-font-lock hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-font-lock
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-custom hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-custom
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-edit hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-edit
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-repl hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-repl
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-util hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-util
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-debug hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-debug
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-logger hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-logger
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-parens hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-parens
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-mode hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-mode
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-imenu hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-imenu
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-back-end hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-back-end
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-visit hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-visit
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-indent hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-indent
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-ppss hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-ppss
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-common hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-common
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-keywords-and-builtins hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-keywords-and-builtins
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-mode-pkg
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-doc hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-doc
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-xp-complete hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-xp-complete
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-wsl hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-wsl
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-package hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-package
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-hash-lang hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-hash-lang
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-profile hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-profile
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-input hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-input
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-collection hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-collection
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-repl-buffer-name hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-repl-buffer-name
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-show hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-show
/usr/share/emacs/site-lisp/elpa/racket-mode-1/racket-scribble-anchor hides /usr/share/emacs/site-lisp/elpa-src/racket-mode-1/racket-scribble-anchor
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-mode-treesitter hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-mode-treesitter
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-common hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-common
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-cargo-tests hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-cargo-tests
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-prog-mode hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-prog-mode
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-compile hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-compile
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-mode-autoloads
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-playpen hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-playpen
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-rustfmt hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-rustfmt
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-cargo hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-cargo
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-utils hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-utils
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-mode-pkg
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-mode-tests hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-mode-tests
/usr/share/emacs/site-lisp/elpa/rust-mode-1.0.6/rust-mode hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-1.0.6/rust-mode
/usr/share/emacs/site-lisp/elpa/s-1.13.0/s hides /usr/share/emacs/site-lisp/elpa-src/s-1.13.0/s
/usr/share/emacs/site-lisp/elpa/s-1.13.0/s-autoloads hides /usr/share/emacs/site-lisp/elpa-src/s-1.13.0/s-autoloads
/usr/share/emacs/site-lisp/elpa/s-1.13.0/s-pkg hides /usr/share/emacs/site-lisp/elpa-src/s-1.13.0/s-pkg
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-mode-pkg
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-compile hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-compile
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-mode-syntax hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-mode-syntax
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-mode hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-mode
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-mode-autoloads
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-mode-fontlock hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-mode-fontlock
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-mode-paragraph hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-mode-paragraph
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-organise hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-organise
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-mode-prettify-symbols hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-mode-prettify-symbols
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-mode-indent hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-mode-indent
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-mode-imenu hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-mode-imenu
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-mode-lib hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-mode-lib
/usr/share/emacs/site-lisp/elpa/scala-mode-1.1.1/scala-mode-map hides /usr/share/emacs/site-lisp/elpa-src/scala-mode-1.1.1/scala-mode-map
/usr/share/emacs/site-lisp/elpa/session-2.4.2/session-pkg hides /usr/share/emacs/site-lisp/elpa-src/session-2.4.2/session-pkg
/usr/share/emacs/site-lisp/elpa/session-2.4.2/session-autoloads hides /usr/share/emacs/site-lisp/elpa-src/session-2.4.2/session-autoloads
/usr/share/emacs/site-lisp/elpa/session-2.4.2/session hides /usr/share/emacs/site-lisp/elpa-src/session-2.4.2/session
/usr/share/emacs/site-lisp/elpa/sml-mode-6.12/sml-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/sml-mode-6.12/sml-mode-autoloads
/usr/share/emacs/site-lisp/elpa/sml-mode-6.12/sml-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/sml-mode-6.12/sml-mode-pkg
/usr/share/emacs/site-lisp/elpa/sml-mode-6.12/sml-mode hides /usr/share/emacs/site-lisp/elpa-src/sml-mode-6.12/sml-mode
/usr/share/emacs/site-lisp/elpa/systemd-1.6/systemd hides /usr/share/emacs/site-lisp/elpa-src/systemd-1.6/systemd
/usr/share/emacs/site-lisp/elpa/systemd-1.6/systemd-autoloads hides /usr/share/emacs/site-lisp/elpa-src/systemd-1.6/systemd-autoloads
/usr/share/emacs/site-lisp/elpa/systemd-1.6/systemd-pkg hides /usr/share/emacs/site-lisp/elpa-src/systemd-1.6/systemd-pkg
/usr/share/emacs/site-lisp/elpa/tabbar-20160524/aquamacs-tabbar hides /usr/share/emacs/site-lisp/elpa-src/tabbar-20160524/aquamacs-tabbar
/usr/share/emacs/site-lisp/elpa/tabbar-20160524/aquamacs-tools hides /usr/share/emacs/site-lisp/elpa-src/tabbar-20160524/aquamacs-tools
/usr/share/emacs/site-lisp/elpa/tabbar-20160524/tabbar-autoloads hides /usr/share/emacs/site-lisp/elpa-src/tabbar-20160524/tabbar-autoloads
/usr/share/emacs/site-lisp/elpa/tabbar-20160524/one-buffer-one-frame hides /usr/share/emacs/site-lisp/elpa-src/tabbar-20160524/one-buffer-one-frame
/usr/share/emacs/site-lisp/elpa/tabbar-20160524/aquamacs-compat hides /usr/share/emacs/site-lisp/elpa-src/tabbar-20160524/aquamacs-compat
/usr/share/emacs/site-lisp/elpa/tabbar-20160524/tabbar-window hides /usr/share/emacs/site-lisp/elpa-src/tabbar-20160524/tabbar-window
/usr/share/emacs/site-lisp/elpa/tabbar-20160524/tabbar-pkg hides /usr/share/emacs/site-lisp/elpa-src/tabbar-20160524/tabbar-pkg
/usr/share/emacs/site-lisp/elpa/tabbar-20160524/tabbar hides /usr/share/emacs/site-lisp/elpa-src/tabbar-20160524/tabbar
/usr/share/emacs/site-lisp/elpa/tp-0.7/tp-pkg hides /usr/share/emacs/site-lisp/elpa-src/tp-0.7/tp-pkg
/usr/share/emacs/site-lisp/elpa/tp-0.7/tp-autoloads hides /usr/share/emacs/site-lisp/elpa-src/tp-0.7/tp-autoloads
/usr/share/emacs/site-lisp/elpa/tp-0.7/tp hides /usr/share/emacs/site-lisp/elpa-src/tp-0.7/tp
/usr/share/emacs/site-lisp/elpa/transient-0.9.4/transient hides /usr/share/emacs/site-lisp/elpa-src/transient-0.9.4/transient
/usr/share/emacs/site-lisp/elpa/transient-0.9.4/transient-autoloads hides /usr/share/emacs/site-lisp/elpa-src/transient-0.9.4/transient-autoloads
/usr/share/emacs/site-lisp/elpa/transient-0.9.4/transient-pkg hides /usr/share/emacs/site-lisp/elpa-src/transient-0.9.4/transient-pkg
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-scope hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-scope
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-follow-mode hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-follow-mode
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-tag-follow-mode hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-tag-follow-mode
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-icons-dired hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-icons-dired
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-diagnostics hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-diagnostics
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-project-follow-mode hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-project-follow-mode
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-tags hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-tags
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-icons hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-icons
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-logging hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-logging
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-filewatch-mode hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-filewatch-mode
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-macros hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-macros
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-pkg hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-pkg
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-fringe-indicator hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-fringe-indicator
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-interface hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-interface
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-compatibility hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-compatibility
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-rendering hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-rendering
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-faces hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-faces
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-treelib hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-treelib
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-bookmarks hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-bookmarks
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-persistence hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-persistence
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-annotations hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-annotations
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-async hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-async
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-themes hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-themes
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-customization hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-customization
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-visuals hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-visuals
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-extensions hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-extensions
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-header-line hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-header-line
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-autoloads hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-autoloads
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-core-utils hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-core-utils
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-mode hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-mode
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-dom hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-dom
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-peek-mode hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-peek-mode
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-mouse-interface hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-mouse-interface
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-hydras hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-hydras
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-workspaces hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-workspaces
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-git-commit-diff-mode hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-git-commit-diff-mode
/usr/share/emacs/site-lisp/elpa/treemacs-3.2/treemacs-file-management hides /usr/share/emacs/site-lisp/elpa-src/treemacs-3.2/treemacs-file-management
/usr/share/emacs/site-lisp/elpa/treemacs-magit-3.1/treemacs-magit-pkg hides /usr/share/emacs/site-lisp/elpa-src/treemacs-magit-3.1/treemacs-magit-pkg
/usr/share/emacs/site-lisp/elpa/treemacs-magit-3.1/treemacs-magit hides /usr/share/emacs/site-lisp/elpa-src/treemacs-magit-3.1/treemacs-magit
/usr/share/emacs/site-lisp/elpa/treemacs-magit-3.1/treemacs-magit-autoloads hides /usr/share/emacs/site-lisp/elpa-src/treemacs-magit-3.1/treemacs-magit-autoloads
/usr/share/emacs/site-lisp/elpa/vala-mode-0.1/vala-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/vala-mode-0.1/vala-mode-autoloads
/usr/share/emacs/site-lisp/elpa/vala-mode-0.1/vala-mode hides /usr/share/emacs/site-lisp/elpa-src/vala-mode-0.1/vala-mode
/usr/share/emacs/site-lisp/elpa/vala-mode-0.1/vala-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/vala-mode-0.1/vala-mode-pkg
/usr/share/emacs/site-lisp/elpa/vterm-0.0.2/vterm-load-path hides /usr/share/emacs/site-lisp/elpa-src/vterm-0.0.2/vterm-load-path
/usr/share/emacs/site-lisp/elpa/vterm-0.0.2/vterm hides /usr/share/emacs/site-lisp/elpa-src/vterm-0.0.2/vterm
/usr/share/emacs/site-lisp/elpa/vterm-0.0.2/vterm-pkg hides /usr/share/emacs/site-lisp/elpa-src/vterm-0.0.2/vterm-pkg
/usr/share/emacs/site-lisp/elpa/vterm-0.0.2/vterm-autoloads hides /usr/share/emacs/site-lisp/elpa-src/vterm-0.0.2/vterm-autoloads
/usr/share/emacs/site-lisp/elpa/web-mode-17.3.20/web-mode hides /usr/share/emacs/site-lisp/elpa-src/web-mode-17.3.20/web-mode
/usr/share/emacs/site-lisp/elpa/web-mode-17.3.20/web-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/web-mode-17.3.20/web-mode-autoloads
/usr/share/emacs/site-lisp/elpa/web-mode-17.3.20/web-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/web-mode-17.3.20/web-mode-pkg
/usr/share/emacs/site-lisp/elpa/with-editor-3.4.5/with-editor hides /usr/share/emacs/site-lisp/elpa-src/with-editor-3.4.5/with-editor
/usr/share/emacs/site-lisp/elpa/with-editor-3.4.5/with-editor-pkg hides /usr/share/emacs/site-lisp/elpa-src/with-editor-3.4.5/with-editor-pkg
/usr/share/emacs/site-lisp/elpa/with-editor-3.4.5/with-editor-autoloads hides /usr/share/emacs/site-lisp/elpa-src/with-editor-3.4.5/with-editor-autoloads
/usr/share/emacs/site-lisp/elpa/xml-rpc-1.6.17/xml-rpc-pkg hides /usr/share/emacs/site-lisp/elpa-src/xml-rpc-1.6.17/xml-rpc-pkg
/usr/share/emacs/site-lisp/elpa/xml-rpc-1.6.17/xml-rpc hides /usr/share/emacs/site-lisp/elpa-src/xml-rpc-1.6.17/xml-rpc
/usr/share/emacs/site-lisp/elpa/xml-rpc-1.6.17/xml-rpc-autoloads hides /usr/share/emacs/site-lisp/elpa-src/xml-rpc-1.6.17/xml-rpc-autoloads
/usr/share/emacs/site-lisp/elpa/yaml-mode-0.0.16/yaml-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/yaml-mode-0.0.16/yaml-mode-autoloads
/usr/share/emacs/site-lisp/elpa/yaml-mode-0.0.16/yaml-mode hides /usr/share/emacs/site-lisp/elpa-src/yaml-mode-0.0.16/yaml-mode
/usr/share/emacs/site-lisp/elpa/yaml-mode-0.0.16/yaml-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/yaml-mode-0.0.16/yaml-mode-pkg
/usr/share/emacs/site-lisp/elpa/yasnippet-0.14.3/yasnippet-autoloads hides /usr/share/emacs/site-lisp/elpa-src/yasnippet-0.14.3/yasnippet-autoloads
/usr/share/emacs/site-lisp/elpa/yasnippet-0.14.3/yasnippet hides /usr/share/emacs/site-lisp/elpa-src/yasnippet-0.14.3/yasnippet
/usr/share/emacs/site-lisp/elpa/yasnippet-0.14.3/yasnippet-pkg hides /usr/share/emacs/site-lisp/elpa-src/yasnippet-0.14.3/yasnippet-pkg
/usr/share/emacs/site-lisp/elpa/yasnippet-0.14.3/yasnippet-debug hides /usr/share/emacs/site-lisp/elpa-src/yasnippet-0.14.3/yasnippet-debug
/usr/share/emacs/site-lisp/elpa/yasnippet-snippets-20240221/yasnippet-snippets-pkg hides /usr/share/emacs/site-lisp/elpa-src/yasnippet-snippets-20240221/yasnippet-snippets-pkg
/usr/share/emacs/site-lisp/elpa/yasnippet-snippets-20240221/yasnippet-snippets hides /usr/share/emacs/site-lisp/elpa-src/yasnippet-snippets-20240221/yasnippet-snippets
/usr/share/emacs/site-lisp/elpa/yasnippet-snippets-20240221/yasnippet-snippets-autoloads hides /usr/share/emacs/site-lisp/elpa-src/yasnippet-snippets-20240221/yasnippet-snippets-autoloads
/usr/share/emacs/site-lisp/elpa/zenburn-theme-2.8.0/zenburn-theme hides /usr/share/emacs/site-lisp/elpa-src/zenburn-theme-2.8.0/zenburn-theme
/usr/share/emacs/site-lisp/elpa/zenburn-theme-2.8.0/zenburn-theme-autoloads hides /usr/share/emacs/site-lisp/elpa-src/zenburn-theme-2.8.0/zenburn-theme-autoloads
/usr/share/emacs/site-lisp/elpa/zenburn-theme-2.8.0/zenburn-theme-pkg hides /usr/share/emacs/site-lisp/elpa-src/zenburn-theme-2.8.0/zenburn-theme-pkg
/usr/share/emacs/site-lisp/elpa/transient-0.9.4/transient hides /usr/share/emacs/30.1/lisp/transient
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-docview hides /usr/share/emacs/30.1/lisp/org/ol-docview
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-shell hides /usr/share/emacs/30.1/lisp/org/ob-shell
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-beamer hides /usr/share/emacs/30.1/lisp/org/ox-beamer
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-lint hides /usr/share/emacs/30.1/lisp/org/org-lint
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-eshell hides /usr/share/emacs/30.1/lisp/org/ol-eshell
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-tangle hides /usr/share/emacs/30.1/lisp/org/ob-tangle
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-protocol hides /usr/share/emacs/30.1/lisp/org/org-protocol
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-irc hides /usr/share/emacs/30.1/lisp/org/ol-irc
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-table hides /usr/share/emacs/30.1/lisp/org/org-table
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-scheme hides /usr/share/emacs/30.1/lisp/org/ob-scheme
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-bibtex hides /usr/share/emacs/30.1/lisp/org/ol-bibtex
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-mhe hides /usr/share/emacs/30.1/lisp/org/ol-mhe
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-persist hides /usr/share/emacs/30.1/lisp/org/org-persist
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-clojure hides /usr/share/emacs/30.1/lisp/org/ob-clojure
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-macro hides /usr/share/emacs/30.1/lisp/org/org-macro
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-core hides /usr/share/emacs/30.1/lisp/org/ob-core
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-texinfo hides /usr/share/emacs/30.1/lisp/org/ox-texinfo
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-datetree hides /usr/share/emacs/30.1/lisp/org/org-datetree
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-eshell hides /usr/share/emacs/30.1/lisp/org/ob-eshell
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-table hides /usr/share/emacs/30.1/lisp/org/ob-table
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-lob hides /usr/share/emacs/30.1/lisp/org/ob-lob
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-id hides /usr/share/emacs/30.1/lisp/org/org-id
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-sqlite hides /usr/share/emacs/30.1/lisp/org/ob-sqlite
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-org hides /usr/share/emacs/30.1/lisp/org/ob-org
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-makefile hides /usr/share/emacs/30.1/lisp/org/ob-makefile
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-goto hides /usr/share/emacs/30.1/lisp/org/org-goto
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-archive hides /usr/share/emacs/30.1/lisp/org/org-archive
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-agenda hides /usr/share/emacs/30.1/lisp/org/org-agenda
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-exp hides /usr/share/emacs/30.1/lisp/org/ob-exp
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-forth hides /usr/share/emacs/30.1/lisp/org/ob-forth
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-loaddefs hides /usr/share/emacs/30.1/lisp/org/org-loaddefs
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-eval hides /usr/share/emacs/30.1/lisp/org/ob-eval
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-crypt hides /usr/share/emacs/30.1/lisp/org/org-crypt
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-html hides /usr/share/emacs/30.1/lisp/org/ox-html
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-ditaa hides /usr/share/emacs/30.1/lisp/org/ob-ditaa
/usr/share/emacs/site-lisp/elpa/org-9.7.29/oc-natbib hides /usr/share/emacs/30.1/lisp/org/oc-natbib
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-ocaml hides /usr/share/emacs/30.1/lisp/org/ob-ocaml
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-koma-letter hides /usr/share/emacs/30.1/lisp/org/ox-koma-letter
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-timer hides /usr/share/emacs/30.1/lisp/org/org-timer
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-footnote hides /usr/share/emacs/30.1/lisp/org/org-footnote
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-w3m hides /usr/share/emacs/30.1/lisp/org/ol-w3m
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-ascii hides /usr/share/emacs/30.1/lisp/org/ox-ascii
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-sed hides /usr/share/emacs/30.1/lisp/org/ob-sed
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-man hides /usr/share/emacs/30.1/lisp/org/ox-man
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-version hides /usr/share/emacs/30.1/lisp/org/org-version
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-inlinetask hides /usr/share/emacs/30.1/lisp/org/org-inlinetask
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-ctags hides /usr/share/emacs/30.1/lisp/org/org-ctags
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-latex hides /usr/share/emacs/30.1/lisp/org/ob-latex
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-gnus hides /usr/share/emacs/30.1/lisp/org/ol-gnus
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-haskell hides /usr/share/emacs/30.1/lisp/org/ob-haskell
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-plot hides /usr/share/emacs/30.1/lisp/org/org-plot
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-ref hides /usr/share/emacs/30.1/lisp/org/ob-ref
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-indent hides /usr/share/emacs/30.1/lisp/org/org-indent
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-octave hides /usr/share/emacs/30.1/lisp/org/ob-octave
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-colview hides /usr/share/emacs/30.1/lisp/org/org-colview
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-duration hides /usr/share/emacs/30.1/lisp/org/org-duration
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-sass hides /usr/share/emacs/30.1/lisp/org/ob-sass
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-gnuplot hides /usr/share/emacs/30.1/lisp/org/ob-gnuplot
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-num hides /usr/share/emacs/30.1/lisp/org/org-num
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-pcomplete hides /usr/share/emacs/30.1/lisp/org/org-pcomplete
/usr/share/emacs/site-lisp/elpa/org-9.7.29/oc-csl hides /usr/share/emacs/30.1/lisp/org/oc-csl
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-keys hides /usr/share/emacs/30.1/lisp/org/org-keys
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-odt hides /usr/share/emacs/30.1/lisp/org/ox-odt
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-publish hides /usr/share/emacs/30.1/lisp/org/ox-publish
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-element hides /usr/share/emacs/30.1/lisp/org/org-element
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-man hides /usr/share/emacs/30.1/lisp/org/ol-man
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-info hides /usr/share/emacs/30.1/lisp/org/ol-info
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-perl hides /usr/share/emacs/30.1/lisp/org/ob-perl
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-rmail hides /usr/share/emacs/30.1/lisp/org/ol-rmail
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-refile hides /usr/share/emacs/30.1/lisp/org/org-refile
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-attach-git hides /usr/share/emacs/30.1/lisp/org/org-attach-git
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-org hides /usr/share/emacs/30.1/lisp/org/ox-org
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob hides /usr/share/emacs/30.1/lisp/org/ob
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-C hides /usr/share/emacs/30.1/lisp/org/ob-C
/usr/share/emacs/site-lisp/elpa/org-9.7.29/oc hides /usr/share/emacs/30.1/lisp/org/oc
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-js hides /usr/share/emacs/30.1/lisp/org/ob-js
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-plantuml hides /usr/share/emacs/30.1/lisp/org/ob-plantuml
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox hides /usr/share/emacs/30.1/lisp/org/ox
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-calc hides /usr/share/emacs/30.1/lisp/org/ob-calc
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-latex hides /usr/share/emacs/30.1/lisp/org/ox-latex
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-tempo hides /usr/share/emacs/30.1/lisp/org/org-tempo
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-emacs-lisp hides /usr/share/emacs/30.1/lisp/org/ob-emacs-lisp
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-feed hides /usr/share/emacs/30.1/lisp/org/org-feed
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-cycle hides /usr/share/emacs/30.1/lisp/org/org-cycle
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-mouse hides /usr/share/emacs/30.1/lisp/org/org-mouse
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-eww hides /usr/share/emacs/30.1/lisp/org/ol-eww
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-fortran hides /usr/share/emacs/30.1/lisp/org/ob-fortran
/usr/share/emacs/site-lisp/elpa/org-9.7.29/oc-biblatex hides /usr/share/emacs/30.1/lisp/org/oc-biblatex
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-screen hides /usr/share/emacs/30.1/lisp/org/ob-screen
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-fold hides /usr/share/emacs/30.1/lisp/org/org-fold
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-julia hides /usr/share/emacs/30.1/lisp/org/ob-julia
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-doi hides /usr/share/emacs/30.1/lisp/org/ol-doi
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-ruby hides /usr/share/emacs/30.1/lisp/org/ob-ruby
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-faces hides /usr/share/emacs/30.1/lisp/org/org-faces
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-element-ast hides /usr/share/emacs/30.1/lisp/org/org-element-ast
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-icalendar hides /usr/share/emacs/30.1/lisp/org/ox-icalendar
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org hides /usr/share/emacs/30.1/lisp/org/org
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol hides /usr/share/emacs/30.1/lisp/org/ol
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-capture hides /usr/share/emacs/30.1/lisp/org/org-capture
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-awk hides /usr/share/emacs/30.1/lisp/org/ob-awk
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-macs hides /usr/share/emacs/30.1/lisp/org/org-macs
/usr/share/emacs/site-lisp/elpa/org-9.7.29/oc-bibtex hides /usr/share/emacs/30.1/lisp/org/oc-bibtex
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-sql hides /usr/share/emacs/30.1/lisp/org/ob-sql
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-groovy hides /usr/share/emacs/30.1/lisp/org/ob-groovy
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ol-bbdb hides /usr/share/emacs/30.1/lisp/org/ol-bbdb
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-java hides /usr/share/emacs/30.1/lisp/org/ob-java
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-python hides /usr/share/emacs/30.1/lisp/org/ob-python
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-lua hides /usr/share/emacs/30.1/lisp/org/ob-lua
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-css hides /usr/share/emacs/30.1/lisp/org/ob-css
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-dot hides /usr/share/emacs/30.1/lisp/org/ob-dot
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-mobile hides /usr/share/emacs/30.1/lisp/org/org-mobile
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-list hides /usr/share/emacs/30.1/lisp/org/org-list
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-R hides /usr/share/emacs/30.1/lisp/org/ob-R
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-clock hides /usr/share/emacs/30.1/lisp/org/org-clock
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-lisp hides /usr/share/emacs/30.1/lisp/org/ob-lisp
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ox-md hides /usr/share/emacs/30.1/lisp/org/ox-md
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-fold-core hides /usr/share/emacs/30.1/lisp/org/org-fold-core
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-src hides /usr/share/emacs/30.1/lisp/org/org-src
/usr/share/emacs/site-lisp/elpa/org-9.7.29/oc-basic hides /usr/share/emacs/30.1/lisp/org/oc-basic
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-comint hides /usr/share/emacs/30.1/lisp/org/ob-comint
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-habit hides /usr/share/emacs/30.1/lisp/org/org-habit
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-matlab hides /usr/share/emacs/30.1/lisp/org/ob-matlab
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-attach hides /usr/share/emacs/30.1/lisp/org/org-attach
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-maxima hides /usr/share/emacs/30.1/lisp/org/ob-maxima
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-compat hides /usr/share/emacs/30.1/lisp/org/org-compat
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-lilypond hides /usr/share/emacs/30.1/lisp/org/ob-lilypond
/usr/share/emacs/site-lisp/elpa/org-9.7.29/ob-processing hides /usr/share/emacs/30.1/lisp/org/ob-processing
/usr/share/emacs/site-lisp/elpa/org-9.7.29/org-entities hides /usr/share/emacs/30.1/lisp/org/org-entities
/usr/share/emacs/site-lisp/elpa/let-alist-1.0.6/let-alist hides /usr/share/emacs/30.1/lisp/emacs-lisp/let-alist

Features:
(shadow sort mail-extr comp-run comp-common emacsbug gnus-topic
cursor-sensor timezone utf-7 url-cache epa-file network-stream nnfolder
gnus-demon nnml ezgnus gnus-delay gnus-draft gnus-agent gnus-srvr
gnus-score score-mode nnvirtual nntp gnus-cache gnus-msg gnus-art mm-uu
mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill
kinsoku url-file svg dom nndraft nnmh gnus-group gnus-undo gnus-start
gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 nnoo
parse-time iso8601 gnus-spec gnus-int gnus-range message yank-media
rfc822 mml mml-sec epa derived mm-decode mm-bodies mm-encode mailabbrev
gmm-utils mailheader gnus-win gnus nnheader gnus-util range term/xterm
xterm cap-words superword subword vc-hg vc-git diff-mode track-changes
vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs log-view pcvs-util vc
vc-dispatcher bug-reference disp-table whitespace cus-start init
zenburn-theme xclip treesit-auto treemacs-project-follow-mode
treemacs-follow-mode treemacs-rendering treemacs-annotations
treemacs-async treemacs-visuals treemacs-fringe-indicator pulse color
treemacs-workspaces treemacs-dom treemacs-icons treemacs-themes
treemacs-scope treemacs-core-utils treemacs-logging
treemacs-customization pfuture inline ht s hl-line dash
auth-source-xoauth2-plugin smtpmail sendmail mail-utils org ob ob-tangle
ob-ref ob-lob ob-table ob-exp org-macro org-src sh-script smie treesit
executable ob-comint org-pcomplete pcomplete org-list org-footnote
org-faces org-entities time-date noutline outline ob-emacs-lisp ob-core
ob-eval org-cycle org-table ol org-fold org-fold-core org-keys oc
org-loaddefs find-func cal-menu calendar cal-loaddefs org-version
org-compat org-macs format-spec oauth2 url-http url-auth mail-parse
rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr url-gw nsm puny
plstore epg rfc6068 epg-config keychain-environment activities-tabs
activities persist bookmark edmacro kmacro advice cperl-mode facemenu
icomplete flymake project compile text-property-search comint ansi-osc
ansi-color ring warnings thingatpt cl-extra help-mode use-package
use-package-ensure use-package-delight use-package-diminish
use-package-bind-key bind-key easy-mmode use-package-core
display-line-numbers autorevert filenotify cus-edit pp cus-load wid-edit
info auctex-autoloads tex-site gptel-autoloads
keychain-environment-autoloads treesit-auto-autoloads xclip-autoloads
activities-autoloads apache-mode-autoloads ats2-mode-autoloads
auth-source-xoauth2-plugin-autoloads bar-cursor-autoloads
bazel-autoloads bison-mode-autoloads bm-autoloads boxquote-autoloads
bpftrace-mode-autoloads browse-kill-ring-autoloads caml-autoloads
clojure-mode-extra-font-locking-autoloads clojure-mode-autoloads
cmake-mode-autoloads color-theme-modern-autoloads company-autoloads
corfu-terminal-autoloads corfu-autoloads csv-mode-autoloads
dape-autoloads dart-mode-autoloads debpaste-autoloads
devscripts-autoloads dh-elpa-autoloads diminish-autoloads
dockerfile-mode-autoloads dpkg-dev-el-autoloads debian-el-autoloads
debian-el dired dired-loaddefs elfeed-autoloads elm-mode-autoloads
eproject-autoloads evil-autoloads exec-path-from-shell-autoloads
f-autoloads folding-autoloads format-all-autoloads
fountain-mode-autoloads geiser-guile-autoloads geiser-racket-autoloads
geiser-autoloads git-modes-autoloads gitattributes-mode-autoloads
gitconfig-mode-autoloads gitignore-mode-autoloads
gitlab-ci-mode-autoloads gnuplot-autoloads go-mode-autoloads
goto-chg-autoloads graphviz-dot-mode-autoloads haskell-mode-autoloads
helm-autoloads helm-core-autoloads async-autoloads htmlize-autoloads
imenu-list-autoloads inform-mode-autoloads inheritenv-autoloads
initsplit-autoloads jinja2-mode-autoloads js2-mode-autoloads
kivy-mode-autoloads kotlin-mode-autoloads language-id-autoloads
lua-mode-autoloads markdown-mode-autoloads mastodon-autoloads
matlab-mode-autoloads meson-mode-autoloads mutt-alias-autoloads
muttrc-mode-autoloads nginx-mode-autoloads oauth2-autoloads
ol-notmuch-autoloads notmuch-autoloads olivetti-autoloads
org-drill-autoloads org-autoloads package-lint-flymake-autoloads
package-lint-autoloads finder-inf paredit-autoloads persist-autoloads
pg-autoloads php-mode-autoloads pip-requirements-autoloads
po-mode-autoloads pod-mode-autoloads popon-autoloads pos-tip-autoloads
protobuf-mode-autoloads puppet-mode-autoloads pkg-info-autoloads
epl-autoloads py-isort-autoloads pyvenv-autoloads qml-mode-autoloads
racket-mode-autoloads rust-mode-autoloads scala-mode-autoloads
session-autoloads sml-mode-autoloads systemd-autoloads rx
tabbar-autoloads tp-autoloads treemacs-magit-autoloads magit-autoloads
pcase transient-autoloads magit-section-autoloads llama-autoloads
treemacs-autoloads cfrs-autoloads posframe-autoloads ht-autoloads
hydra-autoloads lv-autoloads pfuture-autoloads ace-window-autoloads
avy-autoloads s-autoloads dash-autoloads vala-mode-autoloads
vterm-autoloads web-mode-autoloads with-editor-autoloads
xml-rpc-autoloads yaml-mode-autoloads yasnippet-snippets-autoloads
yasnippet-autoloads zenburn-theme-autoloads package browse-url url
url-proxy url-privacy url-expand url-methods url-history url-cookie
generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs icons password-cache json
subr-x map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib
rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook
vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win
term/common-win x-dnd touch-screen tool-bar dnd fontset image regexp-opt
fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode
register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select
scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors
frame minibuffer nadvice seq simple cl-generic indonesian philippine
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure
cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp
files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget keymap hashtable-print-readable backquote
threads dbusbind inotify lcms2 dynamic-setting system-font-setting
font-render-setting cairo gtk x-toolkit xinput2 x multi-tty move-toolbar
make-network-process native-compile emacs)

Memory information:
((conses 16 720918 92309) (symbols 48 31511 0)
 (strings 32 113462 6446) (string-bytes 1 3836846) (vectors 16 43960)
 (vector-slots 8 505370 6640) (floats 8 3417 16587)
 (intervals 56 1231 0) (buffers 992 20))
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Fri, 15 Aug 2025 10:07:01 GMT) Full text and rfc822 format available.

Message #8 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: 79242 <at> debbugs.gnu.org
Cc: Xiyue Deng <manphiz <at> gmail.com>
Subject: [PATCH 1/8] Use `locate-user-emacs-file' instead of concat
 user-emacs-directory
Date: Fri, 15 Aug 2025 03:06:07 -0700
* packages/oauth2/oauth2.el (oauth2-token-file): Use
locate-user-emacs-file.
---
 oauth2.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/oauth2.el b/oauth2.el
index c4b4d71585..0da4883bc3 100644
--- a/oauth2.el
+++ b/oauth2.el
@@ -56,7 +56,7 @@
                    "https://git.savannah.gnu.org/cgit/emacs/elpa.git/tree/?h=externals/oauth2")
   :link '(url-link :tag "ELPA" "https://elpa.gnu.org/packages/oauth2.html"))
 
-(defcustom oauth2-token-file (concat user-emacs-directory "oauth2.plstore")
+(defcustom oauth2-token-file (locate-user-emacs-file "oauth2.plstore")
   "File path where store OAuth tokens."
   :group 'oauth2
   :type 'file)
-- 
2.47.2





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Fri, 15 Aug 2025 10:07:02 GMT) Full text and rfc822 format available.

Message #11 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: 79242 <at> debbugs.gnu.org
Cc: Xiyue Deng <manphiz <at> gmail.com>
Subject: [PATCH 2/8] Update plstore-id calculation including user-name
Date: Fri, 15 Aug 2025 03:06:08 -0700
One way to use OAuth2 authentication is to use predefined
`client-id'/`client-secret' values that are already registered,
e.g. thunderbird, evolution.  Meanwhile, plstore-id calculation only
considers `auth-url', `token-url', `scope', and `client-id'.  When
trying to use predefined client-{id,secret} values, it unfortunately
results in the same value of plstore-id when registering multiple
accounts on the same service, preventing users to use multiple
accounts.

This patch adds `user-name' to be part of the values when calculating
plstore-id so that different accounts on the same service using
predefined values will be stored separately.

* plstore/oauth2/oauth2.el (oauth2-compute-id): Add user-name
parameter and include it when calculating plstore-id.
* plstore/oauth2/oauth2.el (oauth2-auth-and-store): Add user-name
parameter and update oauth2-compute-id invocation to include
user-name.
---
 oauth2.el | 43 ++++++++++++++++++++++++++-----------------
 1 file changed, 26 insertions(+), 17 deletions(-)

diff --git a/oauth2.el b/oauth2.el
index 0da4883bc3..ef9d70c256 100644
--- a/oauth2.el
+++ b/oauth2.el
@@ -257,40 +257,49 @@ TOKEN should be obtained with `oauth2-request-access'."
     auth-url client-id scope state redirect-uri)
    redirect-uri))
 
-(defun oauth2-compute-id (auth-url token-url scope client-id)
-  "Compute an unique id based on AUTH-URL, TOKEN-URL, SCOPE, and CLIENT-ID.
-This allows to store the token in an unique way."
-  (secure-hash 'sha512 (concat auth-url token-url scope client-id)))
+(defun oauth2-compute-id (auth-url token-url scope client-id user-name)
+  "Compute an unique id mainly to use as plstore id.
+The result is computed using AUTH-URL, TOKEN-URL, SCOPE, CLIENT-ID, and
+USER-NAME to ensure the plstore id is unique."
+  (secure-hash 'sha512 (concat auth-url token-url scope client-id user-name)))
 
 ;;;###autoload
 (defun oauth2-auth-and-store (auth-url token-url scope client-id client-secret
-                                       &optional redirect-uri state)
+                                       &optional redirect-uri state user-name)
   "Request access to a resource and store it.
 AUTH-URL and TOKEN-URL are provided by the service provider.  CLIENT-ID
 and CLIENT-SECRET should be generated by the service provider when a
 user registers an application.  SCOPE identifies the resources that your
 application can access on the user's behalf.  STATE is a string that
 your application uses to maintain the state between the request and
-redirect response.
+redirect response. USER-NAME is the login user name and is required to
+provide a unique plstore id for users on the same service provider.
 
 Returns an `oauth2-token'."
   ;; We store a MD5 sum of all URL
   (oauth2--with-plstore
-   (let* ((plstore-id (oauth2-compute-id auth-url token-url scope client-id))
+   (let* ((plstore-id (oauth2-compute-id auth-url token-url scope client-id
+                                         user-name))
           (plist (cdr (plstore-get plstore plstore-id))))
+     (oauth2--do-trivia "user-name: %s\nplstore-id: %s"
+                        user-name plstore-id)
      ;; Check if we found something matching this access
      (if plist
          ;; We did, return the token object
-         (make-oauth2-token :plstore-id plstore-id
-                            :client-id client-id
-                            :client-secret client-secret
-                            :access-token (plist-get plist :access-token)
-                            :refresh-token (plist-get plist :refresh-token)
-                            :request-timestamp (plist-get plist
-                                                          :request-timestamp)
-                            :auth-url auth-url
-                            :token-url token-url
-                            :access-response (plist-get plist :access-response))
+         (progn
+           (oauth2--do-trivia "Found matching plstore-id from plstore.")
+           (make-oauth2-token :plstore-id plstore-id
+                              :client-id client-id
+                              :client-secret client-secret
+                              :access-token (plist-get plist :access-token)
+                              :refresh-token (plist-get plist :refresh-token)
+                              :request-timestamp (plist-get plist
+                                                            :request-timestamp)
+                              :auth-url auth-url
+                              :token-url token-url
+                              :access-response (plist-get plist
+                                                          :access-response)))
+       (oauth2--do-trivia "Requesting new oauth2-token.")
        (let ((token (oauth2-auth auth-url token-url
                                  client-id client-secret scope state
                                  redirect-uri)))
-- 
2.47.2





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Fri, 15 Aug 2025 10:07:02 GMT) Full text and rfc822 format available.

Message #14 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: 79242 <at> debbugs.gnu.org
Cc: Xiyue Deng <manphiz <at> gmail.com>
Subject: [PATCH 4/8] Revise logging
Date: Fri, 15 Aug 2025 03:06:10 -0700
Using backtrace-frame to get the function name seems unreliable, so
changed to directly set `func-name' as string.
* packages/oauth2/oauth2.el: Set all func-names explicitly and add a
few more logging.
---
 oauth2.el | 32 ++++++++++++++++++--------------
 1 file changed, 18 insertions(+), 14 deletions(-)

diff --git a/oauth2.el b/oauth2.el
index ee6989f20c..72c5c5dce3 100644
--- a/oauth2.el
+++ b/oauth2.el
@@ -157,7 +157,8 @@ behalf.  STATE is a string that your application uses to maintain the
 state between the request and redirect response.
 
 Returns the code provided by the service."
-  (let* ((url (oauth2--build-url auth-url
+  (let* ((func-name "oauth2-request-authorization")
+         (url (oauth2--build-url auth-url
                                  "client_id" client-id
                                  "response_type" "code"
                                  "redirect_uri"
@@ -166,6 +167,7 @@ Returns the code provided by the service."
                                  "state" state
                                  "access_type" "offline"
                                  "prompt" "consent")))
+    (oauth2--do-trivia "[%s]: url: %s" func-name url)
     (browse-url url)
     (read-string (concat "Follow the instruction on your default browser, or "
                          "visit:\n" url
@@ -179,9 +181,9 @@ Returns the code provided by the service."
 
 (defun oauth2-make-access-request (url data)
   "Make an access request to URL using DATA in POST requests."
-  (let ((func-name (nth 1 (backtrace-frame 2))))
-    (oauth2--do-trivia "%s: url: %s" func-name url)
-    (oauth2--do-trivia "%s: data: %s" func-name data)
+  (let ((func-name "oauth2-make-access-request"))
+    (oauth2--do-trivia "[%s]: url: %s" func-name url)
+    (oauth2--do-trivia "[%s]: data: %s" func-name data)
     (let ((url-request-method "POST")
           (url-request-data data)
           (url-request-extra-headers
@@ -189,7 +191,7 @@ Returns the code provided by the service."
       (with-current-buffer (url-retrieve-synchronously url)
         (let ((data (oauth2-request-access-parse)))
           (kill-buffer (current-buffer))
-          (oauth2--do-trivia "%s: response: %s" func-name
+          (oauth2--do-trivia "[%s]: response: %s" func-name
                              (prin1-to-string data))
           data)))))
 
@@ -239,7 +241,7 @@ Returns an `oauth2-token'."
 (defun oauth2-refresh-access (token)
   "Refresh OAuth access TOKEN.
 TOKEN should be obtained with `oauth2-request-access'."
-  (if-let* ((func-name (nth 1 (backtrace-frame 2)))
+  (if-let* ((func-name "oauth2-refresh-access")
             (current-timestamp (oauth2--current-timestamp))
             (request-timestamp (oauth2-token-request-timestamp token))
             (timestamp-difference (- current-timestamp request-timestamp))
@@ -247,16 +249,16 @@ TOKEN should be obtained with `oauth2-request-access'."
                                     (oauth2-token-access-response token))))
             (cache-valid
              (progn
-               (oauth2--do-trivia (concat "%s: current-timestamp: %d, "
+               (oauth2--do-trivia (concat "[%s]: current-timestamp: %d, "
                                           "previous request-timestamp: %d, "
                                           "timestamp difference: %d; "
                                           "expires-in: %d, ")
                                   func-name current-timestamp request-timestamp
                                   timestamp-difference expires-in)
                (< timestamp-difference expires-in))))
-      (oauth2--do-debug "%s: reusing cached access-token." func-name)
+      (oauth2--do-debug "[%s]: reusing cached access-token." func-name)
 
-    (oauth2--do-debug "%s: requesting new access-token." func-name)
+    (oauth2--do-debug "[%s]: requesting new access-token." func-name)
     (let* ((client-id (oauth2-token-client-id token))
            (client-secret (oauth2-token-client-secret token))
            (refresh-token (oauth2-token-refresh-token token))
@@ -310,16 +312,18 @@ provide a unique plstore id for users on the same service provider.
 Returns an `oauth2-token'."
   ;; We store a MD5 sum of all URL
   (oauth2--with-plstore
-   (let* ((plstore-id (oauth2-compute-id auth-url token-url scope client-id
+   (let* ((func-name "oauth2-auth-and-store")
+          (plstore-id (oauth2-compute-id auth-url token-url scope client-id
                                          user-name))
           (plist (cdr (plstore-get plstore plstore-id))))
-     (oauth2--do-trivia "user-name: %s\nplstore-id: %s"
-                        user-name plstore-id)
+     (oauth2--do-trivia "[%s]: user-name: %s\nplstore-id: %s"
+                        func-name user-name plstore-id)
      ;; Check if we found something matching this access
      (if plist
          ;; We did, return the token object
          (progn
-           (oauth2--do-trivia "Found matching plstore-id from plstore.")
+           (oauth2--do-trivia "[%s]: found matching plstore-id from plstore."
+                              func-name)
            (make-oauth2-token :plstore-id plstore-id
                               :client-id client-id
                               :client-secret client-secret
@@ -331,7 +335,7 @@ Returns an `oauth2-token'."
                               :token-url token-url
                               :access-response (plist-get plist
                                                           :access-response)))
-       (oauth2--do-trivia "Requesting new oauth2-token.")
+       (oauth2--do-trivia "[%s]: requesting new oauth2-token." func-name)
        (let ((token (oauth2-auth auth-url token-url
                                  client-id client-secret scope state
                                  redirect-uri)))
-- 
2.47.2





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Fri, 15 Aug 2025 10:07:03 GMT) Full text and rfc822 format available.

Message #17 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: 79242 <at> debbugs.gnu.org
Cc: Xiyue Deng <manphiz <at> gmail.com>
Subject: [PATCH 5/8] Add support for login_hint
Date: Fri, 15 Aug 2025 03:06:11 -0700
This helps with using predefined `client-id'/`client-secret' and
preset the user login email when requesting the first authorization.
* packages/oauth2/oauth2.el (oauth2-request-authorization): Add
`user-name' parameter and set as `login_hint'.
* packages/oauth2/oauth2.el (oauth2-auth): Add `user-name' parameter
and pass through `oauth2-request-authorization'.
* packages/oauth2/oauth2.el (oauth2-auth-and-store): Pass `user-name'
through `oauth2-auth'.
---
 oauth2.el | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/oauth2.el b/oauth2.el
index 72c5c5dce3..18a372075f 100644
--- a/oauth2.el
+++ b/oauth2.el
@@ -147,14 +147,16 @@ address to build the full URL."
     (concat address "?" data-str)))
 
 (defun oauth2-request-authorization (auth-url client-id &optional scope state
-                                              redirect-uri)
+                                              redirect-uri user-name)
   "Request OAuth authorization at AUTH-URL by launching `browse-url'.
 CLIENT-ID is the client id provided by the provider which uses
 REDIRECT-URI when requesting an access-token.  The default redirect_uri
 for desktop application is usually \"urn:ietf:wg:oauth:2.0:oob\".  SCOPE
 identifies the resources that your application can access on the user's
 behalf.  STATE is a string that your application uses to maintain the
-state between the request and redirect response.
+state between the request and redirect response. USER-NAME is used to
+provide the login_hint which will fill the login user name on the
+requesting webpage to save users some typing.
 
 Returns the code provided by the service."
   (let* ((func-name "oauth2-request-authorization")
@@ -165,6 +167,7 @@ Returns the code provided by the service."
                                  (or redirect-uri oauth2--default-redirect-uri)
                                  "scope" scope
                                  "state" state
+                                 "login_hint" user-name
                                  "access_type" "offline"
                                  "prompt" "consent")))
     (oauth2--do-trivia "[%s]: url: %s" func-name url)
@@ -280,15 +283,15 @@ TOKEN should be obtained with `oauth2-request-access'."
 
 ;;;###autoload
 (defun oauth2-auth (auth-url token-url client-id client-secret
-                             &optional scope state redirect-uri)
+                             &optional scope state redirect-uri user-name)
   "Authenticate application via OAuth2."
   (oauth2-request-access
    auth-url
    token-url
    client-id
    client-secret
-   (oauth2-request-authorization
-    auth-url client-id scope state redirect-uri)
+   (oauth2-request-authorization auth-url client-id scope state redirect-uri
+                                 user-name)
    redirect-uri))
 
 (defun oauth2-compute-id (auth-url token-url scope client-id user-name)
@@ -338,7 +341,7 @@ Returns an `oauth2-token'."
        (oauth2--do-trivia "[%s]: requesting new oauth2-token." func-name)
        (let ((token (oauth2-auth auth-url token-url
                                  client-id client-secret scope state
-                                 redirect-uri)))
+                                 redirect-uri user-name)))
          ;; Set the plstore
          (setf (oauth2-token-plstore-id token) plstore-id)
          (oauth2--update-plstore plstore token)
-- 
2.47.2





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Fri, 15 Aug 2025 10:07:03 GMT) Full text and rfc822 format available.

Message #20 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: 79242 <at> debbugs.gnu.org
Cc: Xiyue Deng <manphiz <at> gmail.com>
Subject: [PATCH 8/8] Update NEWS with summary of recent changes
Date: Fri, 15 Aug 2025 03:06:14 -0700
---
 NEWS | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/NEWS b/NEWS
index 72b0606659..9858605bc1 100644
--- a/NEWS
+++ b/NEWS
@@ -4,6 +4,43 @@ Summary of changes to oauth2.el
 (For changes of 0.16 and older please check the git history of the
 repository of oauth2.el.)
 
+* 0.18
+
+** Support reusing cached access_token before it expires
+
+In 0.17 and older version, each time one calls `oauth2-refresh-access'
+it will refresh the access_token immediately, which is kind of
+wasteful if the access_token is still valid.  Some services will
+return the same token before it expires, though it would be great to
+avoid the network request.  This has now been implemented.
+
+Note: some people may notice that in most cases there is actually no
+extra network request generated.  This is because auth-source caches
+the credentials, which is controlled by auth-source-cache-expiry (7200
+seconds by default).  As most access_tokens are valid for around 1
+hour, it is advised to reduce that value to 3600 seconds or lower, or
+you may see auth-source login error because the cached credentials are
+expired.
+
+** Support OAuth2 PKCE extension
+
+Proof Key for Code Exchange is an extension to prevent CSRF and
+authorization code injection attacks (RFC7636) and supported by most
+OAuth2 servers.  This is now implemented and enabled by default.
+
+** Another update to plstore id generation
+
+The generation of plstore id now also includes `user-name'.  This
+enables the usage of predefined `client-id'/`client-secret' from
+e.g. thunderbird, evolution, etc.  This is because the same client
+info is shared among accounts, and other access required info like
+auth-url, token-url, etc. are the same for the same service, which
+leads to the same plstore id and prevent handling multiple accounts.
+Adding `user-name' ensures a unique plstore id for each account.
+
+This would mean that users would have to re-authenticate for all
+accounts (like in the last release).
+
 * 0.17
 
 ** Changes to plstore id generation and needs to reacquire refresh_token
-- 
2.47.2





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Fri, 15 Aug 2025 10:07:04 GMT) Full text and rfc822 format available.

Message #23 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: 79242 <at> debbugs.gnu.org
Cc: Xiyue Deng <manphiz <at> gmail.com>
Subject: [PATCH 6/8] Fix cache handling
Date: Fri, 15 Aug 2025 03:06:12 -0700
During testing, it is observed that while the `refresh-token' can be
reused after the initial request, the same `access-token' cannot be
shared between different hosts, e.g. IMAP and SMTP servers.  If one
gets the `access-token' when receiving emails from an IMAP server and
reuse the same `access-token' to send mail to an SMTP server the
login will fail.  The same happens the other way around.

As a result, the access tokens for different servers need to be stored
separately, and each should store its own request timestamp for
expiration checking.

It is also possible that the credentials in the cache are invalid due
to errors.  In such case it should request a new token anyway.

For backward compatibility, the `host-name' parameter is optional, and
if it is not provided, the cache is effectively disabled and each
request will refresh the `access-token' to ensure it works.  Also,
`oauth2-token-access-token' will be updated on each token refresh to
be the latest token retrieved regardless of the host.

* packages/oauth2/oauth2.el (oauth2--update-request-cache,
oauth2--get-from-request-cache): Add helper functions; define the
request-cache structure.
* packages/oauth2/oauth2.el (oauth2-token): Replace request-timestamp
with request-cache structure.
* packages/oauth2/oauth2.el (oauth2--update-plstore): Store the new
request-cache structure.
* packages/oauth2/oauth2.el (oauth2-auth-and-store): Add host-name
parameter and pass down.  Also validate cache or request new.
---
 oauth2.el | 124 +++++++++++++++++++++++++++++++++++++++---------------
 1 file changed, 91 insertions(+), 33 deletions(-)

diff --git a/oauth2.el b/oauth2.el
index 18a372075f..8649af0bb8 100644
--- a/oauth2.el
+++ b/oauth2.el
@@ -99,15 +99,45 @@
   "Get the current timestamp in seconds."
   (time-convert nil 'integer))
 
+(defun oauth2--update-request-cache (host-name access-token request-timestamp
+                                               &optional request-cache)
+  "Update REQUEST-CACHE with HOST-NAME and ACCESS-TOKEN.
+The REQUEST-CACHE has the following structure:
+
+((host-name-1 (:access-token access-token-1
+               :request-timestamp request-timestamp-1))
+ (host-name-2 (:access-token access-token-2
+               :request-timestamp request-timestamp-2))
+ ...)
+
+The `expires-in' value is not stored here because experience says most
+providers use the same expires-in value regardless of which host is
+being requested.
+
+Update REQUEST-CACHE with the given HOST-NAME, the new ACCESS-TOKEN, and
+REQUEST-TIMESTAMP.  If REQUEST-CACHE is nil, create a new one.  If
+HOST-NAME is nil, do nothing.
+
+Returns the newly updated request-cache."
+  (when host-name
+    (let ((host-name (intern host-name)))
+      (org-plist-delete request-cache host-name)
+      (setq request-cache
+          (plist-put request-cache host-name
+                     `( :access-token ,access-token
+                        :request-timestamp ,request-timestamp)))))
+  request-cache)
+
+(defun oauth2--get-from-request-cache (request-cache host-name slot)
+  "Retrieve SLOT info from REQUEST-CACHE of HOST-NAME.
+Returns nil if the slot is unavailable."
+  (plist-get (plist-get request-cache (intern host-name) 'string=) slot))
+
 (defun oauth2--update-plstore (plstore token)
   "Update the file storage with handle PLSTORE with the value in TOKEN."
   (plstore-put plstore (oauth2-token-plstore-id token)
-               nil `(:access-token
-                     ,(oauth2-token-access-token token)
-                     :refresh-token
-                     ,(oauth2-token-refresh-token token)
-                     :request-timestamp
-                     ,(oauth2-token-request-timestamp token)
+               nil `(:request-cache
+                     ,(oauth2-token-request-cache token)
                      :access-response
                      ,(oauth2-token-access-response token)))
   (plstore-save plstore))
@@ -205,19 +235,23 @@ Returns the code provided by the service."
   client-secret
   access-token
   refresh-token
-  request-timestamp
+  request-cache
   auth-url
   token-url
   access-response)
 
 (defun oauth2-request-access (auth-url token-url client-id client-secret code
-                                       &optional redirect-uri)
+                                       &optional redirect-uri host-name)
   "Request OAuth access.
 TOKEN-URL is the URL for making the request.  CLIENT-ID and
 CLIENT-SECRET are provided by the service provider.  The CODE should be
 obtained with `oauth2-request-authorization'.  REDIRECT-URI is used when
 requesting access-token.  The default value for desktop application is
-usually \"urn:ietf:wg:oauth:2.0:oob\".
+usually \"urn:ietf:wg:oauth:2.0:oob\".  HOST-NAME is the server to
+request access, e.g. IMAP or SMTP server address.  Its value should
+match the one when calling `oauth2-auth-and-store'.  Leaving HOST-NAME
+as nil effectively disables caching and will request a new token on each
+request.
 
 Returns an `oauth2-token'."
   (when code
@@ -230,23 +264,32 @@ Returns an `oauth2-token'."
                               "code" code
                               "redirect_uri" (or redirect-uri
                                                  oauth2--default-redirect-uri)
-                              "grant_type" "authorization_code"))))
+                              "grant_type" "authorization_code")))
+           (access-token (cdr (assoc 'access_token access-response)))
+           (refresh-token (cdr (assoc 'refresh_token access-response)))
+           (request-cache (oauth2--update-request-cache host-name
+                                                        access-token
+                                                        request-timestamp)))
       (make-oauth2-token :client-id client-id
                          :client-secret client-secret
-                         :access-token (cdr (assoc 'access_token result))
-                         :refresh-token (cdr (assoc 'refresh_token result))
-                         :request-timestamp request-timestamp
+                         :access-token access-token
+                         :refresh-token refresh-token
+                         :request-cache request-cache
                          :auth-url auth-url
                          :token-url token-url
-                         :access-response result))))
+                         :access-response access-response))))
 
 ;;;###autoload
-(defun oauth2-refresh-access (token)
+(defun oauth2-refresh-access (token &optional host-name)
   "Refresh OAuth access TOKEN.
 TOKEN should be obtained with `oauth2-request-access'."
   (if-let* ((func-name "oauth2-refresh-access")
             (current-timestamp (oauth2--current-timestamp))
-            (request-timestamp (oauth2-token-request-timestamp token))
+            (request-cache (oauth2-token-request-cache token))
+            (request-timestamp (or (oauth2--get-from-request-cache
+                                    request-cache host-name :request-timestamp)
+                                   ;; host-name could be nil, so default to 0
+                                   0))
             (timestamp-difference (- current-timestamp request-timestamp))
             (expires-in (cdr (assoc 'expires_in
                                     (oauth2-token-access-response token))))
@@ -273,9 +316,12 @@ TOKEN should be obtained with `oauth2-request-access'."
                            "grant_type" "refresh_token"))
            (access-token (cdr (assoc 'access_token
                                      (oauth2-make-access-request
-                                      token-url url-param-str)))))
-      (setf (oauth2-token-request-timestamp token) current-timestamp)
-      (setf (oauth2-token-access-token token) access-token))
+                                      token-url url-param-str))))
+           (request-cache (oauth2-token-request-cache token)))
+      (setf (oauth2-token-access-token token) access-token)
+      (setf (oauth2-token-request-cache token)
+            (oauth2--update-request-cache host-name access-token
+                                          current-timestamp request-cache)))
     (oauth2--with-plstore
      (oauth2--update-plstore plstore token)))
 
@@ -283,7 +329,8 @@ TOKEN should be obtained with `oauth2-request-access'."
 
 ;;;###autoload
 (defun oauth2-auth (auth-url token-url client-id client-secret
-                             &optional scope state redirect-uri user-name)
+                             &optional scope state redirect-uri user-name
+                             host-name)
   "Authenticate application via OAuth2."
   (oauth2-request-access
    auth-url
@@ -292,7 +339,8 @@ TOKEN should be obtained with `oauth2-request-access'."
    client-secret
    (oauth2-request-authorization auth-url client-id scope state redirect-uri
                                  user-name)
-   redirect-uri))
+   redirect-uri
+   host-name))
 
 (defun oauth2-compute-id (auth-url token-url scope client-id user-name)
   "Compute an unique id mainly to use as plstore id.
@@ -302,7 +350,8 @@ USER-NAME to ensure the plstore id is unique."
 
 ;;;###autoload
 (defun oauth2-auth-and-store (auth-url token-url scope client-id client-secret
-                                       &optional redirect-uri state user-name)
+                                       &optional redirect-uri state user-name
+                                       host-name)
   "Request access to a resource and store it.
 AUTH-URL and TOKEN-URL are provided by the service provider.  CLIENT-ID
 and CLIENT-SECRET should be generated by the service provider when a
@@ -311,6 +360,9 @@ application can access on the user's behalf.  STATE is a string that
 your application uses to maintain the state between the request and
 redirect response. USER-NAME is the login user name and is required to
 provide a unique plstore id for users on the same service provider.
+HOST-NAME is the server to request authentication, e.g. IMAP or SMTP
+server address.  Leaving HOST-NAME as nil effectively disables caching
+and will request a new token on each refresh.
 
 Returns an `oauth2-token'."
   ;; We store a MD5 sum of all URL
@@ -321,27 +373,33 @@ Returns an `oauth2-token'."
           (plist (cdr (plstore-get plstore plstore-id))))
      (oauth2--do-trivia "[%s]: user-name: %s\nplstore-id: %s"
                         func-name user-name plstore-id)
-     ;; Check if we found something matching this access
-     (if plist
-         ;; We did, return the token object
+     ;; Check if we found something matching this access and have a valid cache.
+     (if-let* ((plist plist)
+               (access-response (plist-get plist :access-response))
+               (refresh-token (cdr (assoc 'refresh_token access-response)))
+               (request-cache (plist-get plist :request-cache))
+               (access-token (or (oauth2--get-from-request-cache
+                                  request-cache host-name :access-token)
+                                 "")))
          (progn
            (oauth2--do-trivia "[%s]: found matching plstore-id from plstore."
                               func-name)
            (make-oauth2-token :plstore-id plstore-id
                               :client-id client-id
                               :client-secret client-secret
-                              :access-token (plist-get plist :access-token)
-                              :refresh-token (plist-get plist :refresh-token)
-                              :request-timestamp (plist-get plist
-                                                            :request-timestamp)
+                              :access-token access-token
+                              :refresh-token refresh-token
+                              :request-cache request-cache
                               :auth-url auth-url
                               :token-url token-url
-                              :access-response (plist-get plist
-                                                          :access-response)))
-       (oauth2--do-trivia "[%s]: requesting new oauth2-token." func-name)
+                              :access-response access-response))
+       (oauth2--do-trivia
+        (concat "[%s]: no matching plstore-id found or cache invalid.  "
+                "Requesting new oauth2-token.")
+        func-name)
        (let ((token (oauth2-auth auth-url token-url
                                  client-id client-secret scope state
-                                 redirect-uri user-name)))
+                                 redirect-uri user-name host-name)))
          ;; Set the plstore
          (setf (oauth2-token-plstore-id token) plstore-id)
          (oauth2--update-plstore plstore token)
-- 
2.47.2





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Fri, 15 Aug 2025 10:07:04 GMT) Full text and rfc822 format available.

Message #26 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: 79242 <at> debbugs.gnu.org
Cc: Xiyue Deng <manphiz <at> gmail.com>
Subject: [PATCH 7/8] Implement OAuth2 PKCE extension (RFC7636)
Date: Fri, 15 Aug 2025 03:06:13 -0700
Proof Key for Code Exchange is an extension to prevent CSRF and
authorization code injection attacks.  This is implemented in other
OAuth2 providers, e.g. thunderbird, mutt_oauth2.py, etc.  On testing
with predefined credentials, it looks like Outlook requires this
extension for requesting access-token or the connection will be denied
even with a retrieved access-token.  This is opt-in, and is enabled
when passing use-pkce as non-nil.

* packages/oauth2/oauth2.el (oauth2-token): Add code-verifier slot.
* packages/oauth2/oauth2.el (oauth2--generate-code-verifier,
oauth2--get-challenge-from-verifier): Add.
* packages/oauth2/oauth2.el (oauth2--update-plstore): Store
code-verifier in plstore.
* packages/oauth2/oauth2.el (oauth2-request-authorization,
oauth2-request-access, oauth2-auth): Add `code-verifier' parameter and
pass down or add to request URL data.
* packages/oauth2/oauth2.el (oauth2-auth-and-store): Generate
`code-verifier' and pass down.
* packages/oauth2/oauth2-tests.el: Add simple unit tests.
---
 oauth2-tests.el | 23 ++++++++++++
 oauth2.el       | 97 +++++++++++++++++++++++++++++++++++++------------
 2 files changed, 97 insertions(+), 23 deletions(-)

diff --git a/oauth2-tests.el b/oauth2-tests.el
index ae6d9babe3..88708155c6 100644
--- a/oauth2-tests.el
+++ b/oauth2-tests.el
@@ -27,3 +27,26 @@
                               "complex" "1+2 <at> 3#4_5/6"
                               "empty2" "")
            "https://localhost?simple=plain&complex=1%2B2%403%234_5%2F6")))
+
+(ert-deftest oauth2--generate-code-verifier-length-test ()
+  ;; base64 encoding on a string of 90 results in 120.
+  (should (=
+           (length (oauth2--generate-code-verifier 90))
+           120)))
+
+(ert-deftest oauth2--get-challenge-from-verifier-test ()
+  ;; Using pre-generated code-verifier values from mutt_oauth2.py for testing.
+  (let ((test-cases
+         '((:verifier
+            "nDe_cq5hGQC6-_OUhE4Y3jVdrPmRVvzSRuNci4efeXeHBiGSqAmVbzMioNMwD1fQn96IL2mChFBzhv2kI02kHNTU1tHI2T9tWn5_Lp9rqy3fGR90WYxYXGKz"
+            :challenge "hqvORBgWMedJHg2HnNs7DcRjEnVuk7gGQi9iBcp7PRs")
+           (:verifier
+            "WItNqcP9W_HFOZV__P5FgYKlbkTOBolU0jWMMIiTTh6rcG3TyoRtV4Ozx7nIJhowhjAjt41gmHwuKgxGhtv1k_5XDj52udYwHdSgqUrmkvhaqYgLADAp7rrf"
+            :challenge "lB2AKQFg6caqfa3u0cnxXihnU69vvGG1cUPRi8_cvpE")))
+        (expected-challenge-length 43))
+    (dolist (test-case test-cases)
+      (let* ((verifier (plist-get test-case :verifier))
+             (challenge (oauth2--get-challenge-from-verifier verifier))
+             (expected-challenge (plist-get test-case :challenge)))
+        (should (string= challenge expected-challenge))
+        (should (= (length challenge) expected-challenge-length))))))
diff --git a/oauth2.el b/oauth2.el
index 8649af0bb8..1ad65d672f 100644
--- a/oauth2.el
+++ b/oauth2.el
@@ -138,6 +138,8 @@ Returns nil if the slot is unavailable."
   (plstore-put plstore (oauth2-token-plstore-id token)
                nil `(:request-cache
                      ,(oauth2-token-request-cache token)
+                     :code-verifier
+                     ,(oauth2-token-code-verifier token)
                      :access-response
                      ,(oauth2-token-access-response token)))
   (plstore-save plstore))
@@ -176,8 +178,33 @@ address to build the full URL."
                       (url-encode-url (car data))))))
     (concat address "?" data-str)))
 
+(defun oauth2--generate-code-verifier (&optional verifier-length)
+  "Generate a random string of VERIFIER-LENGTH long for code_challenge.
+The string should be of length 43 to 128 (inclusive).  If
+VERIFIER-LENGTH is nil, we default to 90 as mutt_oauth2.py did.  See
+RFC7636 for more details."
+  (let* ((func-name "oauth2--generate-code-verifier")
+         (valid-chars
+          "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_")
+         (verifier-length (or verifier-length 90))
+         result-list)
+    (dotimes (_ verifier-length)
+      (let ((i (random (length valid-chars))))
+        (push (substring valid-chars i (1+ i)) result-list)))
+    (base64url-encode-string (string-join result-list))))
+
+(defun oauth2--get-challenge-from-verifier (code-verifier)
+  "Get the code_challenge from CODE-VERIFIER."
+  ;; base64url-encode-string returns a string that ends with '=' so the last
+  ;; character should be skipped.
+  (substring (base64url-encode-string (secure-hash 'sha256
+                                                   code-verifier
+                                                   nil nil t))
+             0 -1))
+
 (defun oauth2-request-authorization (auth-url client-id &optional scope state
-                                              redirect-uri user-name)
+                                              redirect-uri user-name
+                                              code-verifier)
   "Request OAuth authorization at AUTH-URL by launching `browse-url'.
 CLIENT-ID is the client id provided by the provider which uses
 REDIRECT-URI when requesting an access-token.  The default redirect_uri
@@ -186,20 +213,30 @@ identifies the resources that your application can access on the user's
 behalf.  STATE is a string that your application uses to maintain the
 state between the request and redirect response. USER-NAME is used to
 provide the login_hint which will fill the login user name on the
-requesting webpage to save users some typing.
+requesting webpage to save users some typing.  CODE-VERIFIER when
+provided enables the PKCE extension and will generate and provide the
+code_challenge using method S256 when requesting authorization.
 
 Returns the code provided by the service."
   (let* ((func-name "oauth2-request-authorization")
-         (url (oauth2--build-url auth-url
-                                 "client_id" client-id
-                                 "response_type" "code"
-                                 "redirect_uri"
-                                 (or redirect-uri oauth2--default-redirect-uri)
-                                 "scope" scope
-                                 "state" state
-                                 "login_hint" user-name
-                                 "access_type" "offline"
-                                 "prompt" "consent")))
+         (url (let ((param `("client_id" ,client-id
+                             "response_type" "code"
+                             "redirect_uri"
+                             ,(or redirect-uri oauth2--default-redirect-uri)
+                             "scope" ,scope
+                             "state" ,state
+                             "login_hint" ,user-name
+                             "access_type" "offline"
+                             "prompt" "consent")))
+                (when (and code-verifier
+                           (not (string-empty-p code-verifier)))
+                  (setq param (plist-put param "code_challenge"
+                                         (oauth2--get-challenge-from-verifier
+                                          code-verifier)))
+                  (setq param (plist-put param
+                                         "code_challenge_method" "S256")))
+                (add-to-list 'param auth-url)
+                (apply 'oauth2--build-url param))))
     (oauth2--do-trivia "[%s]: url: %s" func-name url)
     (browse-url url)
     (read-string (concat "Follow the instruction on your default browser, or "
@@ -236,12 +273,14 @@ Returns the code provided by the service."
   access-token
   refresh-token
   request-cache
+  code-verifier
   auth-url
   token-url
   access-response)
 
 (defun oauth2-request-access (auth-url token-url client-id client-secret code
-                                       &optional redirect-uri host-name)
+                                       &optional redirect-uri host-name
+                                       code-verifier)
   "Request OAuth access.
 TOKEN-URL is the URL for making the request.  CLIENT-ID and
 CLIENT-SECRET are provided by the service provider.  The CODE should be
@@ -251,7 +290,8 @@ usually \"urn:ietf:wg:oauth:2.0:oob\".  HOST-NAME is the server to
 request access, e.g. IMAP or SMTP server address.  Its value should
 match the one when calling `oauth2-auth-and-store'.  Leaving HOST-NAME
 as nil effectively disables caching and will request a new token on each
-request.
+request.  CODE-VERIFIER is used for the PKCE extension and is required
+when it was already provided during authorization.
 
 Returns an `oauth2-token'."
   (when code
@@ -262,6 +302,7 @@ Returns an `oauth2-token'."
                               "client_id" client-id
                               "client_secret" client-secret
                               "code" code
+                              "code_verifier" code-verifier
                               "redirect_uri" (or redirect-uri
                                                  oauth2--default-redirect-uri)
                               "grant_type" "authorization_code")))
@@ -275,6 +316,7 @@ Returns an `oauth2-token'."
                          :access-token access-token
                          :refresh-token refresh-token
                          :request-cache request-cache
+                         :code-verifier code-verifier
                          :auth-url auth-url
                          :token-url token-url
                          :access-response access-response))))
@@ -330,7 +372,7 @@ TOKEN should be obtained with `oauth2-request-access'."
 ;;;###autoload
 (defun oauth2-auth (auth-url token-url client-id client-secret
                              &optional scope state redirect-uri user-name
-                             host-name)
+                             host-name code-verifier)
   "Authenticate application via OAuth2."
   (oauth2-request-access
    auth-url
@@ -338,9 +380,10 @@ TOKEN should be obtained with `oauth2-request-access'."
    client-id
    client-secret
    (oauth2-request-authorization auth-url client-id scope state redirect-uri
-                                 user-name)
+                                 user-name code-verifier)
    redirect-uri
-   host-name))
+   host-name
+   code-verifier))
 
 (defun oauth2-compute-id (auth-url token-url scope client-id user-name)
   "Compute an unique id mainly to use as plstore id.
@@ -351,7 +394,7 @@ USER-NAME to ensure the plstore id is unique."
 ;;;###autoload
 (defun oauth2-auth-and-store (auth-url token-url scope client-id client-secret
                                        &optional redirect-uri state user-name
-                                       host-name)
+                                       host-name use-pkce)
   "Request access to a resource and store it.
 AUTH-URL and TOKEN-URL are provided by the service provider.  CLIENT-ID
 and CLIENT-SECRET should be generated by the service provider when a
@@ -362,7 +405,9 @@ redirect response. USER-NAME is the login user name and is required to
 provide a unique plstore id for users on the same service provider.
 HOST-NAME is the server to request authentication, e.g. IMAP or SMTP
 server address.  Leaving HOST-NAME as nil effectively disables caching
-and will request a new token on each refresh.
+and will request a new token on each refresh.  USE-PKCE controls whether
+to enable the PKCE extension of RFC7636 which is supported by most
+OAuth2 providers and recommended.
 
 Returns an `oauth2-token'."
   ;; We store a MD5 sum of all URL
@@ -380,7 +425,8 @@ Returns an `oauth2-token'."
                (request-cache (plist-get plist :request-cache))
                (access-token (or (oauth2--get-from-request-cache
                                   request-cache host-name :access-token)
-                                 "")))
+                                 ""))
+               (code-verifier (plist-get plist :code-verifier)))
          (progn
            (oauth2--do-trivia "[%s]: found matching plstore-id from plstore."
                               func-name)
@@ -390,6 +436,7 @@ Returns an `oauth2-token'."
                               :access-token access-token
                               :refresh-token refresh-token
                               :request-cache request-cache
+                              :code-verifier code-verifier
                               :auth-url auth-url
                               :token-url token-url
                               :access-response access-response))
@@ -397,9 +444,13 @@ Returns an `oauth2-token'."
         (concat "[%s]: no matching plstore-id found or cache invalid.  "
                 "Requesting new oauth2-token.")
         func-name)
-       (let ((token (oauth2-auth auth-url token-url
-                                 client-id client-secret scope state
-                                 redirect-uri user-name host-name)))
+       (let* ((code-verifier (if use-pkce
+                                 (oauth2--generate-code-verifier)
+                               ""))
+              (token (oauth2-auth auth-url token-url
+                                  client-id client-secret scope state
+                                  redirect-uri user-name host-name
+                                  code-verifier)))
          ;; Set the plstore
          (setf (oauth2-token-plstore-id token) plstore-id)
          (oauth2--update-plstore plstore token)
-- 
2.47.2





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Fri, 15 Aug 2025 10:07:05 GMT) Full text and rfc822 format available.

Message #29 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: 79242 <at> debbugs.gnu.org
Cc: Xiyue Deng <manphiz <at> gmail.com>
Subject: [PATCH 3/8] Refactor URL handling
Date: Fri, 15 Aug 2025 03:06:09 -0700
Add a few helper functions to make URL handling more robust.
* packages/oauth2/oauth2.el (oauth2--build-url-param-str)
(oauth2--build-url): Add.
* packages/oauth2/oauth2.el (oauth2--default-redirect-uri): Add.
* packages/oauth2/oauth2.el (oauth2-request-authorization)
(oauth2-request-access): refactor to use the new URL handling helper
functions.
* packages/oauth2/oauth2-test.el: Add unit tests for URL handling
functions.
---
 oauth2-tests.el |  29 +++++++++++++
 oauth2.el       | 106 +++++++++++++++++++++++++++++++-----------------
 2 files changed, 98 insertions(+), 37 deletions(-)
 create mode 100644 oauth2-tests.el

diff --git a/oauth2-tests.el b/oauth2-tests.el
new file mode 100644
index 0000000000..ae6d9babe3
--- /dev/null
+++ b/oauth2-tests.el
@@ -0,0 +1,29 @@
+(require 'oauth2)
+(require 'ert)
+
+(ert-deftest oauth2--build-url-param-str-test ()
+  (should (string=
+           (oauth2--build-url-param-str "simple" "plain"
+                                        "empty" nil
+                                        "empty2" ""
+                                        "email" "a <at> example.com")
+           "simple=plain&email=a%40example.com"))
+  (should (string=
+           (oauth2--build-url-param-str "url" "http://localhost"
+                                        "random" "12+3_4_=5=/6/")
+           "url=http%3A%2F%2Flocalhost&random=12%2B3_4_%3D5%3D%2F6%2F"))
+  (should-error (oauth2--build-url-param-str "novalue")
+                :type 'error))
+
+(ert-deftest oauth2--build-url-test ()
+  (should (string=
+           (oauth2--build-url "http://127.0.0.1"
+                              "request=auth&login_hint=manphiz%40outlook.com")
+           "http://127.0.0.1?request=auth&login_hint=manphiz%40outlook.com"))
+  (should (string=
+           (oauth2--build-url "https://localhost"
+                              "simple" "plain"
+                              "empty" nil
+                              "complex" "1+2 <at> 3#4_5/6"
+                              "empty2" "")
+           "https://localhost?simple=plain&complex=1%2B2%403%234_5%2F6")))
diff --git a/oauth2.el b/oauth2.el
index ef9d70c256..ee6989f20c 100644
--- a/oauth2.el
+++ b/oauth2.el
@@ -67,6 +67,8 @@
 (defvar oauth2--url-advice nil)
 (defvar oauth2--token-data)
 
+(defvar oauth2--default-redirect-uri "urn:ietf:wg:oauth:2.0:oob")
+
 (defun oauth2--do-warn (&rest msg)
   "Actual function to log MSG based on how `oauth2-debug' is set."
   (setcar msg (concat "[oauth2] " (car msg)))
@@ -110,6 +112,40 @@
                      ,(oauth2-token-access-response token)))
   (plstore-save plstore))
 
+(defun oauth2--build-url-param-str (&rest data)
+  "Build URL data string with values in DATA.
+DATA should be a list of attribute name and value one by one, therefore
+the length should be a multply of 2 or it will assert fail.  Each value
+will be hexified to be URL-safe.  If a value is not a string or an empty
+string, this pair of key value will be skipped.
+
+Return a URL-safe string of parameter data."
+  (cl-assert (= (mod (length data) 2) 0) t
+             "Invalid parameters.  Must be attribute name value pairs.")
+  (let (data-list)
+    (while data
+      (let ((key (pop data))
+            (value (pop data)))
+        (when (and (stringp value)
+                   (not (string-empty-p value)))
+          (add-to-list 'data-list
+                       (concat key "=" (url-hexify-string value))
+                       t))))
+    (url-encode-url (string-join data-list "&"))))
+
+(defun oauth2--build-url (address &rest data)
+  "Build a URL string with ADDRESS and DATA.
+DATA can be a string or an alist of attributes.  If it is a string, it
+will be encoded; if it is an alist it will be converted to a URL-safe
+string using oauth2--build-url-param-str.  It will then be combined with
+address to build the full URL."
+  (let ((data-str (progn
+                    (if (> (length data) 1)
+                        (apply 'oauth2--build-url-param-str
+                               data)
+                      (url-encode-url (car data))))))
+    (concat address "?" data-str)))
+
 (defun oauth2-request-authorization (auth-url client-id &optional scope state
                                               redirect-uri)
   "Request OAuth authorization at AUTH-URL by launching `browse-url'.
@@ -121,19 +157,15 @@ behalf.  STATE is a string that your application uses to maintain the
 state between the request and redirect response.
 
 Returns the code provided by the service."
-  (let ((url (concat auth-url
-                     (if (string-match-p "\?" auth-url) "&" "?")
-                     "client_id=" (url-hexify-string client-id)
-                     "&response_type=code"
-                     "&redirect_uri=" (url-hexify-string
-                                       (or redirect-uri
-                                           "urn:ietf:wg:oauth:2.0:oob"))
-                     (if scope (concat "&scope=" (url-hexify-string scope)) "")
-                     (if state (concat "&state=" (url-hexify-string state)) "")
-                     ;; The following two parameters are required for Gmail
-                     ;; OAuth2 to generate the refresh token
-                     "&access_type=offline"
-                     "&prompt=consent")))
+  (let* ((url (oauth2--build-url auth-url
+                                 "client_id" client-id
+                                 "response_type" "code"
+                                 "redirect_uri"
+                                 (or redirect-uri oauth2--default-redirect-uri)
+                                 "scope" scope
+                                 "state" state
+                                 "access_type" "offline"
+                                 "prompt" "consent")))
     (browse-url url)
     (read-string (concat "Follow the instruction on your default browser, or "
                          "visit:\n" url
@@ -184,18 +216,16 @@ usually \"urn:ietf:wg:oauth:2.0:oob\".
 
 Returns an `oauth2-token'."
   (when code
-    (let ((request-timestamp (oauth2--current-timestamp))
-          (result
-           (oauth2-make-access-request
-            token-url
-            (url-encode-url
-             (concat
-              "client_id=" client-id
-              (when client-secret
-                (concat  "&client_secret=" client-secret))
-              "&code=" code
-              "&redirect_uri=" (or redirect-uri "urn:ietf:wg:oauth:2.0:oob")
-              "&grant_type=authorization_code")))))
+    (let* ((request-timestamp (oauth2--current-timestamp))
+           (access-response (oauth2-make-access-request
+                             token-url
+                             (oauth2--build-url-param-str
+                              "client_id" client-id
+                              "client_secret" client-secret
+                              "code" code
+                              "redirect_uri" (or redirect-uri
+                                                 oauth2--default-redirect-uri)
+                              "grant_type" "authorization_code"))))
       (make-oauth2-token :client-id client-id
                          :client-secret client-secret
                          :access-token (cdr (assoc 'access_token result))
@@ -227,18 +257,20 @@ TOKEN should be obtained with `oauth2-request-access'."
       (oauth2--do-debug "%s: reusing cached access-token." func-name)
 
     (oauth2--do-debug "%s: requesting new access-token." func-name)
-    (setf (oauth2-token-request-timestamp token) current-timestamp)
-    (setf (oauth2-token-access-token token)
-          (cdr (assoc 'access_token
-                      (oauth2-make-access-request
-                       (oauth2-token-token-url token)
-                       (concat "client_id=" (oauth2-token-client-id token)
-                               (when (oauth2-token-client-secret token)
-                                 (concat "&client_secret="
-                                         (oauth2-token-client-secret token)))
-                               "&refresh_token="
-                               (oauth2-token-refresh-token token)
-                               "&grant_type=refresh_token")))))
+    (let* ((client-id (oauth2-token-client-id token))
+           (client-secret (oauth2-token-client-secret token))
+           (refresh-token (oauth2-token-refresh-token token))
+           (token-url (oauth2-token-token-url token))
+           (url-param-str (oauth2--build-url-param-str
+                           "client_id" client-id
+                           "client_secret" client-secret
+                           "refresh_token" refresh-token
+                           "grant_type" "refresh_token"))
+           (access-token (cdr (assoc 'access_token
+                                     (oauth2-make-access-request
+                                      token-url url-param-str)))))
+      (setf (oauth2-token-request-timestamp token) current-timestamp)
+      (setf (oauth2-token-access-token token) access-token))
     (oauth2--with-plstore
      (oauth2--update-plstore plstore token)))
 
-- 
2.47.2





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Tue, 19 Aug 2025 16:12:02 GMT) Full text and rfc822 format available.

Message #32 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Sean Whitton <spwhitton <at> spwhitton.name>
To: Xiyue Deng <manphiz <at> gmail.com>
Cc: Stefan Monnier <monnier <at> iro.umontreal.ca>, 79242 <at> debbugs.gnu.org
Subject: Re: bug#79242: 30.1; [ELPA] More proposed improvements for oauth2
Date: Tue, 19 Aug 2025 17:11:02 +0100
Hello Xiyue,

What do you think about pointing GNU ELPA at a repository you control so
that you can install changes to this particular package yourself?
It could be on Salsa, perhaps.
And putting your name in the Maintainer field?

CCing Stefan as the ELPA maintainer in case he has comments.

-- 
Sean Whitton




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Wed, 20 Aug 2025 04:40:01 GMT) Full text and rfc822 format available.

Message #35 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: Sean Whitton <spwhitton <at> spwhitton.name>
Cc: Julien Danjou <julien <at> danjou.info>,
 Stefan Monnier <monnier <at> iro.umontreal.ca>, 79242 <at> debbugs.gnu.org
Subject: Re: bug#79242: 30.1; [ELPA] More proposed improvements for oauth2
Date: Tue, 19 Aug 2025 21:39:35 -0700
[Message part 1 (text/plain, inline)]
Sean Whitton <spwhitton <at> spwhitton.name> writes:

> Hello Xiyue,
>
> What do you think about pointing GNU ELPA at a repository you control so
> that you can install changes to this particular package yourself?
> It could be on Salsa, perhaps.
> And putting your name in the Maintainer field?
>

I'm fine with this set up.  Thanks for your trust!  Hopefully I won't do
too bad a job and run it into ground :P

> CCing Stefan as the ELPA maintainer in case he has comments.

Also CCing original author Julien Danjou for comments.

-- 
Xiyue Deng
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Sun, 31 Aug 2025 05:51:02 GMT) Full text and rfc822 format available.

Message #38 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: Sean Whitton <spwhitton <at> spwhitton.name>
Cc: Julien Danjou <julien <at> danjou.info>,
 Stefan Monnier <monnier <at> iro.umontreal.ca>, 79242 <at> debbugs.gnu.org
Subject: Re: bug#79242: 30.1; [ELPA] More proposed improvements for oauth2
Date: Sat, 30 Aug 2025 22:50:11 -0700
[Message part 1 (text/plain, inline)]
Xiyue Deng <manphiz <at> gmail.com> writes:

> Sean Whitton <spwhitton <at> spwhitton.name> writes:
>
>> Hello Xiyue,
>>
>> What do you think about pointing GNU ELPA at a repository you control so
>> that you can install changes to this particular package yourself?
>> It could be on Salsa, perhaps.
>> And putting your name in the Maintainer field?
>>
>
> I'm fine with this set up.  Thanks for your trust!  Hopefully I won't do
> too bad a job and run it into ground :P
>
>> CCing Stefan as the ELPA maintainer in case he has comments.
>
> Also CCing original author Julien Danjou for comments.
>

Friendly ping.

-- 
Regards,
Xiyue Deng
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Sun, 31 Aug 2025 15:03:01 GMT) Full text and rfc822 format available.

Message #41 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Sean Whitton <spwhitton <at> spwhitton.name>
To: Xiyue Deng <manphiz <at> gmail.com>
Cc: Julien Danjou <julien <at> danjou.info>,
 Stefan Monnier <monnier <at> iro.umontreal.ca>, 79242 <at> debbugs.gnu.org
Subject: Re: bug#79242: 30.1; [ELPA] More proposed improvements for oauth2
Date: Sun, 31 Aug 2025 16:02:02 +0100
Hello,

On Sat 30 Aug 2025 at 10:50pm -07, Xiyue Deng wrote:

> Xiyue Deng <manphiz <at> gmail.com> writes:
>
>> Sean Whitton <spwhitton <at> spwhitton.name> writes:
>>
>>> Hello Xiyue,
>>>
>>> What do you think about pointing GNU ELPA at a repository you control so
>>> that you can install changes to this particular package yourself?
>>> It could be on Salsa, perhaps.
>>> And putting your name in the Maintainer field?
>>>
>>
>> I'm fine with this set up.  Thanks for your trust!  Hopefully I won't do
>> too bad a job and run it into ground :P
>>
>>> CCing Stefan as the ELPA maintainer in case he has comments.
>>
>> Also CCing original author Julien Danjou for comments.
>>
>
> Friendly ping.

I think we can go ahead with pointing ELPA at a repository controlled by
you, if you could set that up.

-- 
Sean Whitton




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Sun, 31 Aug 2025 15:31:01 GMT) Full text and rfc822 format available.

Message #44 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Sean Whitton <spwhitton <at> spwhitton.name>
Cc: Julien Danjou <julien <at> danjou.info>, 79242 <at> debbugs.gnu.org,
 Xiyue Deng <manphiz <at> gmail.com>
Subject: Re: bug#79242: 30.1; [ELPA] More proposed improvements for oauth2
Date: Sun, 31 Aug 2025 11:30:06 -0400
> I think we can go ahead with pointing ELPA at a repository controlled by
> you, if you could set that up.

+1


        Stefan





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Mon, 01 Sep 2025 06:23:01 GMT) Full text and rfc822 format available.

Message #47 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>, Sean Whitton
 <spwhitton <at> spwhitton.name>
Cc: Julien Danjou <julien <at> danjou.info>, 79242 <at> debbugs.gnu.org
Subject: Re: bug#79242: 30.1; [ELPA] More proposed improvements for oauth2
Date: Sun, 31 Aug 2025 23:22:41 -0700
[Message part 1 (text/plain, inline)]
Hi Sean, Stefan,

Stefan Monnier <monnier <at> iro.umontreal.ca> writes:

>> I think we can go ahead with pointing ELPA at a repository controlled by
>> you, if you could set that up.
>
> +1
>
>
>         Stefan
>

Thanks for confirming!  I took the liberty and created a repo on
gitlab.com[1] for hosting.  I avoided Salsa because it's mainly used for
Debian packaging and a repo in your personal namespace is usually
considered a fork from team or debian repo, so using it as a upstream
repo may be confusing. (But do let me know if that's preferred, and I'm
fine to move the repo to Salsa.) I have also added versioned tags (e.g
v0.1, v0.2, etc.) to match the corresponding commits.

Let me know what are still missing for setting up the external repo.
Thanks again!

[1] https://gitlab.com/manphiz/oauth2

-- 
Regards,
Xiyue Deng
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#79242; Package emacs. (Mon, 01 Sep 2025 08:49:02 GMT) Full text and rfc822 format available.

Message #50 received at 79242 <at> debbugs.gnu.org (full text, mbox):

From: Sean Whitton <spwhitton <at> spwhitton.name>
To: Xiyue Deng <manphiz <at> gmail.com>
Cc: Julien Danjou <julien <at> danjou.info>,
 Stefan Monnier <monnier <at> iro.umontreal.ca>, 79242 <at> debbugs.gnu.org
Subject: Re: bug#79242: 30.1; [ELPA] More proposed improvements for oauth2
Date: Mon, 01 Sep 2025 09:47:57 +0100
Hello,

On Sun 31 Aug 2025 at 11:22pm -07, Xiyue Deng wrote:

> Thanks for confirming!  I took the liberty and created a repo on
> gitlab.com[1] for hosting.  I avoided Salsa because it's mainly used for
> Debian packaging and a repo in your personal namespace is usually
> considered a fork from team or debian repo, so using it as a upstream
> repo may be confusing. (But do let me know if that's preferred, and I'm
> fine to move the repo to Salsa.) I have also added versioned tags (e.g
> v0.1, v0.2, etc.) to match the corresponding commits.
>
> Let me know what are still missing for setting up the external repo.
> Thanks again!

Avoiding salsa is fine, it was just a suggestion, though I don't think
your interpretation of the salsa personal namespace matches other
people's.

In any case I've switched ELPA over to fetch from your gitlab.com
repository.  Could you go through and apply the relevant patches and
then ensure the bugs in debbugs are all closed, please?

Thank you for taking this on.

-- 
Sean Whitton




Reply sent to Xiyue Deng <manphiz <at> gmail.com>:
You have taken responsibility. (Mon, 01 Sep 2025 23:54:01 GMT) Full text and rfc822 format available.

Notification sent to Xiyue Deng <manphiz <at> gmail.com>:
bug acknowledged by developer. (Mon, 01 Sep 2025 23:54:02 GMT) Full text and rfc822 format available.

Message #55 received at 79242-done <at> debbugs.gnu.org (full text, mbox):

From: Xiyue Deng <manphiz <at> gmail.com>
To: Sean Whitton <spwhitton <at> spwhitton.name>
Cc: Julien Danjou <julien <at> danjou.info>, 79242-done <at> debbugs.gnu.org,
 Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: Re: bug#79242: 30.1; [ELPA] More proposed improvements for oauth2
Date: Mon, 01 Sep 2025 16:53:32 -0700
[Message part 1 (text/plain, inline)]
Sean Whitton <spwhitton <at> spwhitton.name> writes:

> Hello,
>
> On Sun 31 Aug 2025 at 11:22pm -07, Xiyue Deng wrote:
>
>> Thanks for confirming!  I took the liberty and created a repo on
>> gitlab.com[1] for hosting.  I avoided Salsa because it's mainly used for
>> Debian packaging and a repo in your personal namespace is usually
>> considered a fork from team or debian repo, so using it as a upstream
>> repo may be confusing. (But do let me know if that's preferred, and I'm
>> fine to move the repo to Salsa.) I have also added versioned tags (e.g
>> v0.1, v0.2, etc.) to match the corresponding commits.
>>
>> Let me know what are still missing for setting up the external repo.
>> Thanks again!
>
> Avoiding salsa is fine, it was just a suggestion, though I don't think
> your interpretation of the salsa personal namespace matches other
> people's.
>

Haha, OK.

> In any case I've switched ELPA over to fetch from your gitlab.com
> repository.  Could you go through and apply the relevant patches and
> then ensure the bugs in debbugs are all closed, please?
>

Sure.  Revised the patches, added Gitlab CI, pushed, and tagged v0.18.
Closing.

> Thank you for taking this on.
>

My pleasure!

> -- 
> Sean Whitton

-- 
Regards,
Xiyue Deng
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 3 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.