Function: pdf-tools-msys2-directory

pdf-tools-msys2-directory is a natively compiled function defined in pdf-tools.el.

Signature

(pdf-tools-msys2-directory &optional NONINTERACTIVE-P)

Documentation

Locate the Msys2 installation directory.

Ask the user if necessary and NONINTERACTIVE-P is nil. Returns always nil, unless system-type equals windows-nt.

Source Code

;; Defined in /nix/store/63h5z2vmzn0mfavcxi2idi23g5xcgkbl-emacs-packages-deps/share/emacs/site-lisp/elpa/pdf-tools-20260102.1101/pdf-tools.el
(defun pdf-tools-msys2-directory (&optional noninteractive-p)
  "Locate the Msys2 installation directory.

Ask the user if necessary and NONINTERACTIVE-P is nil.
Returns always nil, unless `system-type' equals windows-nt."
  (cl-labels ((if-msys2-directory (directory)
                (and (stringp directory)
                     (file-directory-p directory)
                     (file-exists-p
                      (expand-file-name "usr/bin/bash.exe" directory))
                     directory)))
    (when (eq system-type 'windows-nt)
      (setq pdf-tools-msys2-directory
            (or pdf-tools-msys2-directory
                (cl-some #'if-msys2-directory
                         (cl-mapcan
                          (lambda (drive)
                            (list (format "%c:/msys64" drive)
                                  (format "%c:/msys32" drive)))
                          (number-sequence ?c ?z)))
                (unless (or noninteractive-p
                            (not (y-or-n-p "Do you have Msys2 installed ? ")))
                  (if-msys2-directory
                   (read-directory-name
                    "Please enter Msys2 installation directory: " nil nil t))))))))