-*- mode: lisp-data -*- scheme-mode (package... "(define-public " (s name) n> "(package" n> "(name \"" (s name) "\")" n> "(version \"" p "\")" n> "(source origin...)" n> "(build-system \"" (p (completing-read "build-system:" '("android-ndk" "ant" "asdf" "cargo" "chicken" "clojure" "cmake" "copy" "dub" "dune" "emacs" "font" "glib-or-gtk" "gnu" "go" "guile" "haskell" "julia" "linux-module" "maven" "meson" "minetest" "minify" "node" "ocaml" "perl" "python" "qt" "r" "rakudo" "rebar" "renpy" "ruby" "scons" "texlive" "trivial" "waf") nil t) "-build-system") "\")" n> "(home-page \"" p "\")" n> "(synopsis \"" p "\")" n> "(description \"" p "\")" n> "(license " p ")))" n) (origin... "(origin" n> "(method \"" (p (completing-read "method:" '("url-fetch" "url-fetch/tarbomb" "url-fetch/zipbomb" "cvs-fetch" "git-fetch" "hg-fetch" "svn-fetch" "bzr-fetch") nil t) method) "\")" n> "(uri " (cl-case (intern method) ('git-fetch "git-reference...") ('svn-fetch "svn-reference...") ('hg-fetch "hg-reference...") ('cvs-fetch "cvs-reference...") ('bzr-fetch "bzr-reference...") (t "(string-append \"https://")) p (if (equal (substring method 0 9) "url-fetch") "\")") ")" n> (cl-case (intern method) ('git-fetch "(file-name (git-file-name name version))\n") ('hg-fetch "(file-name (hg-file-name name version))\n") ('svn-fetch "(file-name (string-append name \"-\" version \"-checkout\"))\n") ('cvs-fetch "(file-name (string-append name \"-\" version \"-checkout\"))\n") ('bzr-fetch "(file-name (string-append name \"-\" version \"-checkout\"))\n") (t "")) > "(sha256" n> "(base32 \"" p "\")))") (git-reference... "(git-reference" n> "(url \"" p "\")" n> "(commit \"" p "\"))") (svn-reference... "(svn-reference" n> "(url \"" p "\")" n> "(revision \"" p "\"))") (cvs-reference... "(cvs-reference" n> "(root-directory \"" p "\")" n> "(module \"" p "\")" n> "(revision \"" p "\"))") (hg-reference... "(hg-reference" n> "(url \"" p "\")" n> "(changeset \"" p "\"))") (bzr-reference... "(bzr-reference" n> "(url \"" p "\")" n> "(revision \"" p "\"))")