summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--archival.scm301
1 files changed, 301 insertions, 0 deletions
diff --git a/archival.scm b/archival.scm
new file mode 100644
index 0000000..9994073
--- /dev/null
+++ b/archival.scm
@@ -0,0 +1,301 @@
+(define-module (archival)
+ #:use-module ((guix licenses) :prefix license:)
+ #:use-module (gnu packages calendar)
+ #:use-module (gnu packages check)
+ #:use-module (gnu packages commencement)
+ #:use-module (gnu packages cpp)
+ #:use-module (gnu packages curl)
+ #:use-module (gnu packages databases)
+ #:use-module (gnu packages django)
+ #:use-module (gnu packages golang)
+ #:use-module (gnu packages golang-build)
+ #:use-module (gnu packages golang-check)
+ #:use-module (gnu packages golang-web)
+ #:use-module (gnu packages golang-xyz)
+ #:use-module (gnu packages maths)
+ #:use-module (gnu packages node)
+ #:use-module (gnu packages openldap)
+ #:use-module (gnu packages pretty-print)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages pth)
+ #:use-module (gnu packages python-build)
+ #:use-module (gnu packages tbb)
+ #:use-module (gnu packages python-check)
+ #:use-module (gnu packages python-science)
+ #:use-module (gnu packages python-web)
+ #:use-module (gnu packages python-xyz)
+ #:use-module (guix gexp)
+ #:use-module (gnu packages regex)
+ #:use-module (gnu packages serialization)
+ #:use-module (gnu packages sphinx)
+ #:use-module (gnu packages time)
+ #:use-module (gnu packages tls)
+ #:use-module (gnu packages video)
+ #:use-module (gnu packages xml)
+ #:use-module (gnu packages)
+ #:use-module (guix build utils)
+ #:use-module (guix build-system cmake)
+ #:use-module (guix build-system go)
+ #:use-module (guix build-system pyproject)
+ #:use-module (guix build-system python)
+ #:use-module (guix download)
+ #:use-module (guix git-download)
+ #:use-module (guix packages)
+ )
+(define-public expected-lite
+ (package
+ (name "expected-lite")
+ (version "0.8.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/martinmoene/expected-lite.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0dqa6ivqqyg5c2xyp1dakqnm4mf1m4g8bsi5jscgvv82pi3zxdzh"))))
+ (build-system cmake-build-system)
+ ;(inputs (list fmt-10 gsl))
+ ;(arguments
+ ;`(
+ ; #:tests? #f)
+ ;) ; no tests
+ (home-page "https://github.com/expected-lite/expected-lite")
+ (synopsis "expected lite - Expected objects in C++11 and later in a single-file header-only library")
+ (description "expected lite is a single-file header-only library for objects that either represent a valid value or an error that you can pass by value. It is intended for use with C++11 and later. The library is based on the std::expected proposal.")
+ (license (license:x11-style "https://github.com/martinmoene/expected-lite/blob/master/LICENSE.txt"
+ ))))
+
+(define-public gsl-lite
+ (package
+ (name "gsl-lite")
+ (version "0.41.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/gsl-lite/gsl-lite.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0aj2ck2jdiy05f83bknjb9zjvsi766d11fv6flxm0v9ngp3s5svj"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(
+ #:tests? #f)
+ ) ; no tests
+ (home-page "https://github.com/gsl-lite/gsl-lite")
+ (synopsis "gsl-lite – A single-file header-only version of ISO C++ Guidelines Support Library (GSL) for C++98, C++11, and later")
+ (description "gsl-lite is an implementation of the C++ Core Guidelines Support Library originally based on Microsoft GSL.")
+ (license (list license:expat))))
+
+(define-public fbdtemme-cliprogress
+ (package
+ (name "fbdtemme-cliprogress")
+ (version "d8ac5169cb50abcf2f8a33c4f40f193e16176bd1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/fbdtemme/cliprogress")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "11r3g8vrnf5hl6iv92fk5sxg7ahdvxwxaszwvaxjc14xx0q37xaz"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags
+ #~(list
+ "-DCLIPROGRESS_BUILD_TESTS=OFF"
+ "-DCLIPROGRESS_BUILD_EXAMPLES=OFF"
+ )
+ ))
+ (inputs (list fmt gsl-lite palacaze-sigslot compile-time-regular-expressions fbdtemme-termcontrol pth catch2))
+ (home-page "https://github.com/fbdtemme/cliprogress")
+ (synopsis "A flexible widget based progress bar for C++")
+ (description "A flexible widget based progress bar for C++")
+ (license #f)))
+
+(define-public fbdtemme-dottorrent
+ (package
+ (name "fbdtemme-dottorrent")
+ (version "4488d3e63b97bbcad392147e46c88587d83a1bc3")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/fbdtemme/dottorrent")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1686jldv4npaxd91jakm9qdg1x3wqhs1sf84lmlalsfympbd1pcp"))))
+ (build-system cmake-build-system)
+ (native-inputs (list catch2))
+ (inputs (list fmt gsl-lite compile-time-regular-expressions expected-lite bencode openssl))
+ (arguments
+ (list
+ #:configure-flags
+ #~(list
+ "-DDOTTORRENT_BUILD_TESTS=OFF"
+ "-DCMAKE_INSTALL_INCLUDEDIR=include"
+ )
+ ))
+ (home-page "https://github.com/fbdtemme/dottorrent")
+ (synopsis "A BitTorrent metafile library.")
+ (description "A C++20 library for working with BitTorrent metafiles. This library is used in the torrenttools project. Use outside of the torrenttools project is currently not recommended due to a lack of documentation.")
+ (license license:expat)))
+
+(define-public fbdtemme-termcontrol
+ (package
+ (name "fbdtemme-termcontrol")
+ (version "adfb2741d5e1ecc710c6cfe573d134299c74d899")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/fbdtemme/termcontrol")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1wxs5p97hhpa4sz3dv3am9cic8wq6cfgffz5ccgqzxrv9ldnqy6w"))))
+ (build-system cmake-build-system)
+ (native-inputs (list catch2))
+ (inputs (list fmt gsl-lite compile-time-regular-expressions expected-lite))
+ (arguments
+ (list
+ #:configure-flags
+ #~(list
+ "-DTERMCONTROL_BUILD_TESTS=OFF"
+ "-DCMAKE_INSTALL_INCLUDEDIR=include"
+ )
+ ))
+ (home-page "https://github.com/fbdtemme/termcontrol")
+ (synopsis "A library for ecma-48 control sequences.")
+ (description "A small C++20 library for ANSI control sequences and terminal bits.")
+ (license license:expat)))
+
+(define-public palacaze-sigslot
+ (package
+ (name "palacaze-sigslot")
+ (version "1.2.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/palacaze/sigslot")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "085a49yh2ankyi0flmxiisvnf71jrw4dv2f2bgblgwg9n5j5barh"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(
+ #:tests? #f) ; tests are unable to be run
+ )
+ (home-page "https://github.com/palacaze/sigslot")
+ (synopsis "A simple C++14 signal-slots implementation")
+ (description "Sigslot is a header-only, thread safe implementation of signal-slots for C++.")
+ (license (list license:asl2.0))))
+
+(define-public bencode
+ (package
+ (name "bencode")
+ (version "d30b335336c02f43100930b73e1da3fb8a388927")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/fbdtemme/bencode")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0ghqxs4ynyhhbxmbk2g2nfg7rk53glccyi3xgk4rik8hmms9hm9x"))))
+ (build-system cmake-build-system)
+ (inputs (list fmt gsl-lite gcc-toolchain-14 expected-lite))
+ (arguments
+ (list
+ #:configure-flags
+ #~(list
+ "-DBENCODE_BUILD_TESTS=OFF"
+ )
+ ))
+ (home-page "https://github.com/fbdtemme/bencode")
+ (synopsis "A C++20 header-only bencode library.")
+ (description "A header-only C++20 bencode serialization/deserialization library.")
+ (license (list license:expat))))
+
+(define-public compile-time-regular-expressions
+ (package
+ (name "compile-time-regular-expressions")
+ (version "3.9.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hanickadot/compile-time-regular-expressions")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0m1j7r7m8npsh4sm0bc87x121alr2nyjyldf86c78l1qm9w7qv0n"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(
+ #:tests? #f)) ; no tests
+ (home-page "https://github.com/hanickadot/compile-time-regular-expressions")
+ (synopsis "Compile Time Regular Expression in C++")
+ (description "Fast compile-time regular expressions with support for matching/searching/capturing during compile-time or runtime.")
+ (license (list license:asl2.0))))
+
+(define-public re2-cmake
+ (package
+ (inherit re2)
+ (name "re2")
+ (version "2022-12-01")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/google/re2.git")
+ (commit version)
+ ))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0g627a5ppyarhf2ph4gyzj89pwbkwfjfajgljzkmjafjmdyxfqs6"))))
+ (build-system cmake-build-system)
+ (arguments
+ '(#:configure-flags
+ (list
+ (string-append "-DCMAKE_INSTALL_INCLUDEDIR=INCLUDE"))))
+ ))
+
+(define-public torrenttools
+ (package
+ (name "torrenttools")
+ (version "50240659223031364f48798e361e6f470f2d50c8")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/fbdtemme/torrenttools.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "02cabrb1qpd44ild1bf6x2fy3pm5vnmw04nfav41gkxmjsx29c34"))))
+ (build-system cmake-build-system)
+ (inputs (list gcc-toolchain-14 fmt gsl-lite cli11 expected-lite nlohmann-json re2-cmake yaml-cpp compile-time-regular-expressions palacaze-sigslot date bencode fbdtemme-termcontrol fbdtemme-cliprogress fbdtemme-dottorrent tbb openssl))
+ ;(arguments
+ ;`(#:phases (modify-phases %standard-phases
+ ; (delete 'configure)) ; no configure script
+ ; #:make-flags (list (string-append "CC=" ,(cc-for-target))
+ ; (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ ; "NO_HASH_CHECK=1"
+ ; "USE_LARGE_FILES=1"
+ ; "USE_LONG_OPTIONS=1"
+ ; "USE_PTHREADS=1")
+ ; #:tests? #f)) ; no tests
+ (home-page "https://github.com/fbdtemme/torrenttools.git")
+ (synopsis "Commandline tool for inspecting, creating and editing BitTorrent metafiles.")
+ (description "A commandline tool for creating, inspecting and modifying bittorrent metafiles.")
+ (license (list license:expat))))