summaryrefslogtreecommitdiff
path: root/guix/scripts/import/minetest.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix/scripts/import/minetest.scm')
-rw-r--r--guix/scripts/import/minetest.scm99
1 files changed, 6 insertions, 93 deletions
diff --git a/guix/scripts/import/minetest.scm b/guix/scripts/import/minetest.scm
index 5f204d90fc..2bfbbd3c02 100644
--- a/guix/scripts/import/minetest.scm
+++ b/guix/scripts/import/minetest.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2014 David Thompson <davet@gnu.org>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
+;;; Copyright © 2025 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,99 +20,11 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (guix scripts import minetest)
- #:use-module (guix ui)
- #:use-module (guix utils)
- #:use-module (guix scripts)
- #:use-module (guix import minetest)
- #:use-module (guix import utils)
- #:use-module (guix scripts import)
- #:use-module (srfi srfi-1)
- #:use-module (srfi srfi-11)
- #:use-module (srfi srfi-37)
- #:use-module (ice-9 match)
- #:use-module (ice-9 format)
+ #:use-module (guix scripts import luanti)
+ #:use-module (guix deprecation)
#:export (guix-import-minetest))
-
-;;;
-;;; Command-line options.
-;;;
-
-(define %default-options
- `((sort . ,%default-sort-key)))
-
-(define (show-help)
- (display (G_ "Usage: guix import minetest AUTHOR/NAME
-Import and convert the Minetest mod NAME by AUTHOR from ContentDB.\n"))
- (display (G_ "
- -h, --help display this help and exit"))
- (display (G_ "
- -r, --recursive import packages recursively"))
- (display (G_ "
- -V, --version display version information and exit"))
- (display (G_ "
- --sort=KEY when choosing between multiple implementations,
- choose the one with the highest value for KEY
- (one of \"score\" (standard) or \"downloads\")"))
- (newline)
- (show-bug-report-information))
-
-(define (verify-sort-order sort)
- "Verify SORT can be used to sort mods by."
- (unless (member sort '("score" "downloads" "reviews"))
- (leave (G_ "~a: not a valid key to sort by~%") sort))
- sort)
-
-(define %options
- ;; Specification of the command-line options.
- (cons* (option '(#\h "help") #f #f
- (lambda args
- (show-help)
- (exit 0)))
- (option '(#\V "version") #f #f
- (lambda args
- (show-version-and-exit "guix import minetest")))
- (option '(#\r "recursive") #f #f
- (lambda (opt name arg result)
- (alist-cons 'recursive #t result)))
- (option '("sort") #t #f
- (lambda (opt name arg result)
- (alist-cons 'sort (verify-sort-order arg) result)))
- %standard-import-options))
-
-
-;;;
-;;; Entry point.
-;;;
-
(define (guix-import-minetest . args)
- (define (parse-options)
- ;; Return the alist of option values.
- (args-fold* args %options
- (lambda (opt name arg result)
- (leave (G_ "~A: unrecognized option~%") name))
- (lambda (arg result)
- (alist-cons 'argument arg result))
- %default-options))
-
- (let* ((opts (parse-options))
- (args (filter-map (match-lambda
- (('argument . value)
- value)
- (_ #f))
- (reverse opts))))
- (match args
- ((name)
- (with-error-handling
- (let* ((sort (assoc-ref opts 'sort))
- (author/name (elaborate-contentdb-name name #:sort sort)))
- (if (assoc-ref opts 'recursive)
- ;; Recursive import
- (filter-map package->definition
- (minetest-recursive-import author/name #:sort sort))
- ;; Single import
- (minetest->guix-package author/name #:sort sort)))))
- (()
- (leave (G_ "too few arguments~%")))
- ((many ...)
- (leave (G_ "too many arguments~%"))))))
+ (warn-about-deprecation 'guix-import-minetest #f
+ #:replacement 'guix-import-luanti)
+ (apply guix-import-luanti args))