* gnu/packages/mega.scm (mega-sdk):Add MEGA SDK The SDK is a dependency of MEGAsync so I thought to make a new file since there's multiple packages that are MEGA related and then I discovered that the megacmd package exists; is it better for this to be placed in sync.scm, next to megacmd? --- gnu/packages/mega.scm | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) new file   gnu/packages/mega.scm @@ -0,0 +1,74 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2021 Wamm K. D. +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix.  If not, see . + +(define-module (gnu packages mega) +  #:use-module ((guix licenses) #:prefix license:) +  #:use-module (guix utils) +  #:use-module (guix packages) +  #:use-module (guix git-download) +  #:use-module (guix build-system gnu) +  #:use-module (gnu packages pkg-config) +  #:use-module (gnu packages autotools) +  #:use-module (gnu packages crypto) +  #:use-module (gnu packages compression) +  #:use-module (gnu packages sqlite) +  #:use-module (gnu packages tls) +  #:use-module (gnu packages adns) +  #:use-module (gnu packages curl) +  #:use-module (gnu packages image) +  #:use-module (gnu packages readline) +  #:use-module (gnu packages crypto)) + +(define-public mega-sdk +  (let ([version "3.9.10"]) +    (package +      (name "mega-sdk") +      (version version) +      (source (origin +                (method git-fetch) +                (uri (git-reference +                      (url "https://github.com/meganz/sdk/") +                      (commit (string-append "v" version)))) +                (file-name (git-file-name name version)) +                (sha256 (base32 +                          "08qw23rm4rrvlsbcixrncbi5x0qgqkpx74l5f1gq2rgll0ksx8ph")) +                (modules '((guix build utils))))) +      (build-system gnu-build-system) +      (native-inputs `(("autoconf" ,autoconf) +                       ("automake" ,automake) +                       ("libtool" ,libtool))) +      (inputs `(("crypto++" ,crypto++) +                ("zlib" ,zlib) +                ("sqlite" ,sqlite) +                ("openssl" ,openssl) +                ("c-ares" ,c-ares) +                ("curl" ,curl) +                ("freeimage" ,freeimage) +                ("readline" ,readline) +                ("libsodium" ,libsodium))) +      (arguments `(#:tests? #f)) +      (home-page "https://mega.nz/sdk") +      (synopsis "SDK for the MEGA service, offered by MEGA Limited") +      (description "A low-level SDK for the MEGA service which powers the +file-sharing site.  This package provides two executables: +@itemize +@item megacli: a command-line tool that allows usage of all SDK features +@item megasimplesync: a command line tool that allows usage of the +synchronization engine +@end itemize") +      (license license:bsd-2))))