gnu: Add emacs-dired-toggle-sudo.
* gnu/packages/emacs-xyz.scm (emacs-dired-toggle-sudo): New variable. * gnu/packages/patches/emacs-dired-toggle-sudo-emacs-26.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
This commit is contained in:
parent
1a24d8b347
commit
76c2e51017
|
@ -772,6 +772,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/elfutils-tests-ptrace.patch \
|
||||
%D%/packages/patches/elixir-path-length.patch \
|
||||
%D%/packages/patches/einstein-build.patch \
|
||||
%D%/packages/patches/emacs-dired-toggle-sudo-emacs-26.patch \
|
||||
%D%/packages/patches/emacs-exec-path.patch \
|
||||
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
|
||||
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \
|
||||
|
|
|
@ -7185,6 +7185,30 @@ above over the network.")
|
|||
in Org buffers and displays matching entries.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-dired-toggle-sudo
|
||||
(package
|
||||
(name "emacs-dired-toggle-sudo")
|
||||
(version "1.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/renard/dired-toggle-sudo")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ajj8d6k5in2hclcrqckinfh80ylddplva0ryfbkzsjkfq167cv2"))
|
||||
(patches
|
||||
(search-patches
|
||||
"emacs-dired-toggle-sudo-emacs-26.patch"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/renard/dired-toggle-sudo")
|
||||
(synopsis "Browse directory with @code{sudo} privileges")
|
||||
(description "This package allows for the use of @code{dired} with
|
||||
@code{sudo} privileges.")
|
||||
(license license:wtfpl2)))
|
||||
|
||||
(define-public emacs-memoize
|
||||
(package
|
||||
(name "emacs-memoize")
|
||||
|
|
|
@ -0,0 +1,49 @@
|
|||
From 3c0f4b27a079b90dc632f5061a81ce28cef24801 Mon Sep 17 00:00:00 2001
|
||||
From: eryx67 <eryx67@gmail.com>
|
||||
Date: Thu, 29 Nov 2018 10:30:20 +0500
|
||||
Subject: [PATCH] fix for latest emacs
|
||||
|
||||
---
|
||||
dired-toggle-sudo.el | 11 +++++++----
|
||||
1 file changed, 7 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/dired-toggle-sudo.el b/dired-toggle-sudo.el
|
||||
index 386921b..fe5898e 100644
|
||||
--- a/dired-toggle-sudo.el
|
||||
+++ b/dired-toggle-sudo.el
|
||||
@@ -37,17 +37,20 @@
|
||||
unless SUDO-USER is provided."
|
||||
(let* (;; Handle the case of local files. `tramp-dissect-file-name' does
|
||||
;; not raise an error anymore.
|
||||
- (path (if (tramp-tramp-file-p path) path (concat "/:" path)))
|
||||
+ ;;(path (if (tramp-tramp-file-p path) path (concat "/-::" path)))
|
||||
(file-vec (or (ignore-errors (tramp-dissect-file-name
|
||||
path))
|
||||
(tramp-dissect-file-name
|
||||
- (concat "/:" path) 1)))
|
||||
+ (concat "/-::" path) 1)))
|
||||
(method (tramp-file-name-method file-vec))
|
||||
(user (tramp-file-name-user file-vec))
|
||||
(host (tramp-file-name-host file-vec))
|
||||
+ (domain (tramp-file-name-domain file-vec))
|
||||
+ (port (tramp-file-name-port file-vec))
|
||||
(localname (expand-file-name
|
||||
(tramp-file-name-localname file-vec))))
|
||||
- (when (string= system-name host)
|
||||
+ (when (or (string= (system-name) host)
|
||||
+ (string= "-" host))
|
||||
(setq host nil))
|
||||
(cond
|
||||
;; remote directory -> sudo
|
||||
@@ -67,7 +70,7 @@ unless SUDO-USER is provided."
|
||||
(setq method "sudo" user sudo-user)))
|
||||
(replace-regexp-in-string
|
||||
"^/:/" "/"
|
||||
- (tramp-make-tramp-file-name method user host localname))))
|
||||
+ (tramp-make-tramp-file-name method domain user host port localname))))
|
||||
|
||||
(defun dired-toggle-sudo-find (fname)
|
||||
"Create a new buffer for file name FNAME."
|
||||
--
|
||||
2.22.0
|
||||
|
Loading…
Reference in New Issue