gnu: rofi-pass: Update to 2.0.2-0.8aa6b92.
With no release in over 5 years, update to the most recent commit to include features like Wayland support. Rewrite the package definition to use the makefile, patch paths, and generally improve the style. * gnu/packages/password-utils.scm (rofi-pass): Update to 2.0.2-0.8aa6b92. [origin]: Use git-fetch rather than just the individual script. [build-system]: Switch to gnu-build-system. [arguments]: Remove modules and builder. Disable tests. Add make-flags. <phases>: Add fix-etc-path and wrap-path phases. Remove configure and build. [propagated-inputs]: Move to ... [inputs]: ... here. Add bash-minimal, pwgen, xclip, and xset. Change-Id: Ia03ef46f3b567bc2eb6d1350db3612043f06d94b
This commit is contained in:
		
							parent
							
								
									03459ca165
								
							
						
					
					
						commit
						eef9e0ee8f
					
				
					 1 changed files with 60 additions and 30 deletions
				
			
		|  | @ -40,6 +40,7 @@ | |||
| ;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr> | ||||
| ;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com> | ||||
| ;;; Copyright © 2023 Christian Miller <christian.miller@dadoes.de> | ||||
| ;;; Copyright © 2024 John Kehayias <john.kehayias@protonmail.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -906,35 +907,64 @@ encryption.") | |||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public rofi-pass | ||||
|   (package | ||||
|     (name "rofi-pass") | ||||
|     (version "2.0.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri | ||||
|         (string-append "https://raw.githubusercontent.com/carnager/rofi-pass/" | ||||
|                        version "/rofi-pass")) | ||||
|        (sha256 | ||||
|         (base32 "0msldkndqp40nx1s5s7ggcr97ir4nshpmnyzvj5hqw1l7m3gvw6j")) | ||||
|        (file-name name))) | ||||
|     (build-system trivial-build-system) | ||||
|     (arguments | ||||
|      `(#:modules ((guix build utils)) | ||||
|        #:builder | ||||
|        (begin | ||||
|          (use-modules (guix build utils)) | ||||
|          (let ((source (string-append (assoc-ref %build-inputs "source"))) | ||||
|                (script "rofi-pass") | ||||
|                (out (assoc-ref %outputs "out"))) | ||||
|            (copy-file source script) | ||||
|            (chmod script #o555) | ||||
|            (install-file script (string-append out "/bin")))))) | ||||
|     (propagated-inputs | ||||
|      (list password-store rofi xdotool)) | ||||
|     (home-page "https://github.com/carnager/rofi-pass") | ||||
|     (synopsis "Rofi frontend for password-store") | ||||
|     (description "Rofi-pass provides a way to manipulate information stored | ||||
|   ;; No release in over 5 years with recent commits adding features like | ||||
|   ;; Wayland support. | ||||
|   (let ((commit "8aa6b9293a8f0af267425326fa966966ca42085e") | ||||
|         (revision "0")) | ||||
|     (package | ||||
|       (name "rofi-pass") | ||||
|       (version (git-version "2.0.2" revision commit)) | ||||
|       (source | ||||
|        (origin | ||||
|          (method git-fetch) | ||||
|          (uri (git-reference | ||||
|                (url "https://github.com/carnager/rofi-pass") | ||||
|                (commit commit))) | ||||
|          (sha256 | ||||
|           (base32 | ||||
|            "0axz4ijp6fay6f2yn1cg6223l89jkg8wnxslbk1g5jpli0njxw43")) | ||||
|          (file-name (git-file-name name version)))) | ||||
|       (build-system gnu-build-system) | ||||
|       (arguments | ||||
|        (list #:tests? #f ; no tests | ||||
|              #:make-flags #~(list (string-append "PREFIX=" #$output)) | ||||
|              #:phases | ||||
|              #~(modify-phases %standard-phases | ||||
|                  (add-after 'unpack 'fix-etc-path | ||||
|                    (lambda _ | ||||
|                      (substitute* "Makefile" | ||||
|                        (("\\$\\(DESTDIR\\)/etc") | ||||
|                         (string-append #$output "/etc"))) | ||||
|                      (substitute* "rofi-pass" | ||||
|                        (("/etc") | ||||
|                         (string-append #$output "/etc"))))) | ||||
|                  (delete 'configure) ; no configure | ||||
|                  (delete 'build)     ; no build | ||||
|                  (add-after 'install 'wrap-path | ||||
|                    (lambda* (#:key inputs #:allow-other-keys) | ||||
|                      (let ((bin (string-append #$output "/bin"))) | ||||
|                        (for-each | ||||
|                         (lambda (script) | ||||
|                           (wrap-program (string-append bin "/" script) | ||||
|                             (list "PATH" 'prefix | ||||
|                                   (map | ||||
|                                    (lambda (binary) | ||||
|                                      (dirname (search-input-file | ||||
|                                                inputs | ||||
|                                                (string-append "bin/" binary)))) | ||||
|                                    '("pass" "pwgen" "rofi" | ||||
|                                      "xclip" "xdotool" "xset"))))) | ||||
|                         (list "addpass" "rofi-pass")))))))) | ||||
|       (inputs (list bash-minimal ;for wrap-program | ||||
|                     password-store | ||||
|                     pwgen | ||||
|                     rofi | ||||
|                     xclip | ||||
|                     xdotool | ||||
|                     xset)) | ||||
|       (home-page "https://github.com/carnager/rofi-pass") | ||||
|       (synopsis "Rofi frontend for password-store") | ||||
|       (description "Rofi-pass provides a way to manipulate information stored | ||||
| using password-store through rofi interface: | ||||
| @enumerate | ||||
| @item open URLs of entries with hotkey; | ||||
|  | @ -944,7 +974,7 @@ using password-store through rofi interface: | |||
| @item auto-typing of more than one field, using the autotype entry; | ||||
| @item bookmarks mode (open stored URLs in browser, default: Alt+x). | ||||
| @end enumerate") | ||||
|     (license license:gpl3))) | ||||
|       (license license:gpl3)))) | ||||
| 
 | ||||
| (define-public tessen | ||||
|   (package | ||||
|  |  | |||
		Reference in a new issue