(define-module (wip vagrant) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix hg-download) #:use-module (guix utils) #:use-module (guix build-system python) #:use-module (guix build-system gnu) #:use-module (guix build-system ruby) #:use-module (guix gexp) #:use-module (gnu packages) #:use-module (gnu packages base) #:use-module (gnu packages cross-base) #:use-module (gnu packages compression) #:use-module (gnu packages elf) #:use-module (gnu packages ghostscript) #:use-module (gnu packages image) #:use-module (gnu packages tcl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages ruby) #:use-module (gnu packages xml)) (define-public ruby-public-suffix (package (name "ruby-public-suffix") (version "3.0.2") (source (origin (method url-fetch) (uri (string-append "https://github.com/weppos/publicsuffix-ruby/archive/v" version ".tar.gz")) (sha256 (base32 "1qsyv6q073n9yw8kh27sml0sisn1r89syhkfl3kc266rlj350pkd")))) (build-system ruby-build-system) ; needs rubocop, git. (arguments `(#:tests? #f)) (native-inputs `(("bundler" ,bundler))) (synopsis "Decompose a domain name into top level domain, domain and subdomains") (description "PublicSuffix can parse and decompose a domain name into top level domain, domain and subdomains.") (home-page "https://simonecarletti.com/code/publicsuffix-ruby") (license license:expat))) (define-public ruby-addressable (package (name "ruby-addressable") (version "2.5.2") (source (origin (method url-fetch) (uri (rubygems-uri "addressable" version)) (sha256 (base32 "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) ; FIXME: Re-enable (native-inputs `(("ruby-rspec" ,ruby-rspec))) (propagated-inputs `(("ruby-public-suffix" ,ruby-public-suffix))) (synopsis "Addressable is a replacement for the URI implementation that is part of Ruby's standard library. It more closely conforms to the relevant RFCs and adds support for IRIs and URI templates. ") (description "Addressable is a replacement for the URI implementation that is part of Ruby's standard library. It more closely conforms to the relevant RFCs and adds support for IRIs and URI templates. ") (home-page "https://github.com/sporkmonger/addressable") (license #f))) (define-public ruby-safe-yaml (package (name "ruby-safe-yaml") (version "1.0.4") (source (origin (method url-fetch) (uri (rubygems-uri "safe_yaml" version)) (sha256 (base32 "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) (native-inputs `(("ruby-rspec" ,ruby-rspec))) (synopsis "Parse YAML safely") (description "Parse YAML safely") (home-page "https://github.com/dtao/safe_yaml") (license license:expat))) (define-public ruby-crack (package (name "ruby-crack") (version "0.4.3") (source (origin (method url-fetch) (uri (rubygems-uri "crack" version)) (sha256 (base32 "0abb0fvgw00akyik1zxnq7yv391va148151qxdghnzngv66bl62k")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) ; No Rakefile ?? (propagated-inputs `(("ruby-safe-yaml" ,ruby-safe-yaml))) (synopsis "Really simple JSON and XML parsing, ripped from Merb and Rails.") (description "Really simple JSON and XML parsing, ripped from Merb and Rails.") (home-page "http://github.com/jnunemaker/crack") (license license:expat))) (define-public ruby-hoe-mercurial (package (name "ruby-hoe-mercurial") (version "1.4.1") (source (origin (method url-fetch) (uri (rubygems-uri "hoe-mercurial" version)) (sha256 (base32 "0w2113p7ga4x2yl6zb95qmzwpx4a4r5pjg469sx9fbkb8fbpg2n7")))) (build-system ruby-build-system) (propagated-inputs `(("ruby-hoe" ,ruby-hoe))) (synopsis "Fork of the @url{https://bitbucket.org/mml/hoe-hg,hoe-hg} plugin with extra features") (description "hoe-mercurial, fork of the @url{https://bitbucket.org/mml/hoe-hg,hoe-hg} plugin.") (home-page "http://bitbucket.org/ged/hoe-mercurial") (license license:bsd-3))) (define-public ruby-bluecloth (package (name "ruby-bluecloth") (version "2.2.0") (source (origin (method url-fetch) (uri (rubygems-uri "bluecloth" version)) (sha256 (base32 "1y83wzvhilyfqpn37d6rc23wl0p03q03wb5m1jdr10va7x1jh0dk")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) ; FIXME: Re-enable. (native-inputs `(("ruby-hoe" ,ruby-hoe) ("ruby-hoe-mercurial" ,ruby-hoe-mercurial) ("ruby-rake-compiler" ,ruby-rake-compiler))) (synopsis "Markdown to HTML converter in Ruby") (description "@code{bluecloth} is a Markdown to HTML converter in Ruby.") (home-page "http://deveiate.org/projects/BlueCloth") (license #f))) ; FIXME what's the license? BSD-something. (define-public ruby-hashdiff (package (name "ruby-hashdiff") (version "0.3.7") (source (origin (method url-fetch) (uri (rubygems-uri "hashdiff" version)) (sha256 (base32 "0yj5l2rw8i8jc725hbcpc4wks0qlaaimr3dpaqamfjkjkxl0hjp9")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) ; TODO: Re-enable. (native-inputs `(("bundler" ,bundler) ("ruby-bluecloth" ,ruby-bluecloth) ("ruby-rspec" ,ruby-rspec) ("ruby-yard" ,ruby-yard))) (synopsis "Compute the smallest difference between two hashes") (description "@code{HashDiff} is a diff lib to compute the smallest difference between two hashes.") (home-page "https://github.com/liufengyun/hashdiff") (license license:expat))) (define-public ruby-webmock (package (name "ruby-webmock") (version "3.4.2") (source (origin (method url-fetch) (uri (rubygems-uri "webmock" version)) (sha256 (base32 "03994dxs4xayvkxqp01dd1ivhg4xxx7z35f7cxw7y2mwj3xn24ib")))) (build-system ruby-build-system) (native-inputs `(("bundler" ,bundler) ("ruby-rspec" ,ruby-rspec))) (propagated-inputs `(("ruby-addressable" ,ruby-addressable) ("ruby-crack" ,ruby-crack) ("ruby-hashdiff" ,ruby-hashdiff))) (synopsis "Stub HTTP requests and set expectations on HTTP requests") (description "WebMock allows stubbing HTTP requests and setting expectations on HTTP requests.") (home-page "http://github.com/bblimke/webmock") (license license:expat))) (define-public ruby-ruby-dep (package (name "ruby-ruby-dep") (version "1.5.0") (source (origin (method url-fetch) (uri (rubygems-uri "ruby_dep" version)) (sha256 (base32 "1c1bkl97i9mkcvkn1jks346ksnvnnp84cs22gwl0vd7radybrgy5")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) (synopsis "Creates a version constraint of supported Rubies,suitable for a gemspec file") (description "Creates a version constraint of supported Rubies,suitable for a gemspec file") (home-page "https://github.com/e2/ruby_dep") (license license:expat))) (define-public ruby-hashicorp-checkpoint (package (name "ruby-hashicorp-checkpoint") (version "0.1.5") (source (origin (method url-fetch) (uri (rubygems-uri "hashicorp-checkpoint" version)) (sha256 (base32 "1z6mwzvd7p2wqhmk07dwrhvm0ncgqm7pxn0pr2k025rwsspp9bsd")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) (native-inputs `(("ruby-rspec" ,ruby-rspec) ("ruby-rspec-its" ,ruby-rspec-its))) (synopsis "Internal HashiCorp service to check version information") (description "Internal HashiCorp service to check version information") (home-page "http://www.hashicorp.com") (license #f))) (define-public vagrant (package (name "vagrant") (version "2.1.2") (source (origin (method url-fetch) (uri (string-append "https://github.com/hashicorp/vagrant/archive/v" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "0fb90v43d30whhyjlgb9mmy93ccbpr01pz97kp5hrg3wfd7703b1")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) ; bundler error. (inputs `(("ruby-childprocess" ,ruby-childprocess-0.6) ("ruby-rust-dep" ,ruby-ruby-dep) ; ? ("ruby-erubis" ,ruby-erubis) ("ruby-hashicorp-checkpoint" ,ruby-hashicorp-checkpoint) ; ? ("ruby-i18n" ,ruby-i18n) ; ? ("ruby-listen" ,ruby-listen) ("ruby-log4r" ,ruby-log4r) ; ? ("ruby-net-ssh" ,ruby-net-ssh) ("ruby-net-scp" ,ruby-net-scp) ("ruby-net-sftp" ,ruby-net-sftp) ; ? )) (native-inputs `(("bundler" ,bundler) ("ruby-rspec" ,ruby-rspec) ("ruby-rspec-its" ,ruby-rspec-its) ("ruby-webmock" ,ruby-webmock))) (synopsis "vagrant") (description "FIXME") (home-page "FIXME") (license #f))) ; FIXME MIT