Subject: Re: [bug#30266] Add FANN

From: Ben Woodcroft <[email-masked]>
Date: Fri, 2 Feb 2018 23:12:07 +1000

Thanks Mark. I made a few small changes and pushed the patch as 
a9b34762391e6f3b066aef6fc1ebc614ec88db86.

On 02/02/18 01:32, Mark Meyer wrote:
> Thanks for the good feedback. Please consider the attached patch.
>
> Best, Mark
>
> On Sun, Jan 28, 2018, at 03:13, Ben Woodcroft wrote:
>>
>> Hi Mark,
>>
>> Thanks for the patch.
>>
>>> +(define-module (gnu packages ai)
>>> +  #:use-module ((guix licenses) #:prefix license:)
>>> +  #:use-module (guix utils)
>>> +  #:use-module (guix download)
>>> +  #:use-module (guix packages)
>>> +  #:use-module (guix build-system cmake)
>>> +  #:use-module (guix git-download)
>>> +  #:use-module (gnu packages))
>> I think machine-learning.scm would be a good home for this package, 
>> so a new file wouldn't be needed.
>>
>>
>>
>>> +
>>> +(define-public libfann
>>> +  (package
>>> +    (name "libfann")
>>> +    (version "d71d54788b")
>>
>>
>> The last release is 129 commits behind and it has been some time, so 
>> I think you are right - we should package from a git commit.
>>
>> Usually we package from git using this style though (i.e. reason for 
>> not using the release, use of 'file-name', and a version that 
>> includes the last release followed by '-1.<commit>').
>>
>>   ;; There are no recent releases so we package from git.
>>   (let ((commit "da121155a977197cab9fbb15953ca1b40b11eb87"))
>>     (package
>>       (name "newick-utils")
>>       (version (string-append "1.6-1." (string-take commit 8)))
>>       (source (origin
>>                 (method git-fetch)
>>                 (uri (git-reference
>>                       (url 
>> "https://github.com/tjunier/newick_utils.git" 
>> <https://github.com/tjunier/newick_utils.git>)
>>                       (commit commit)))
>>                 (file-name (string-append name "-" version "-checkout"))
>>                 (sha256
>>                  (base32
>> "1hkw21rq1mwf7xp0rmbb2gqc0i6p11108m69i7mr7xcjl268pxnb"))))
>>
>>
>>> +    (source (origin
>>> +              (method git-fetch)
>>> +              (uri (git-reference
>>> +                    (url"https://github.com/libfann/fann.git" 
>>> <https://github.com/libfann/fann.git>)
>>> +                    (commit version)))
>>> +              (sha256
>>> +               (base32
>>> +                "0ibwpfrjs6q2lijs8slxjgzb2llcl6rk3v2ski4r6215g5jjhg3x"))))
>>> +    (build-system cmake-build-system)
>>> +    (arguments
>>> +     `(#:tests? #f))
>> I see from the website:
>>
>>
>>
>>> Once you have installed the library you can test it out by going to 
>>> the examples directory and type |make runtest|, which will compile 
>>> the examples and run a few of them to test that everything is working.
>> Is that possible? Ideally, since there are tests it would be good to 
>> run them.
>>
>>
>>> +    (home-page"http://leenissen.dk/fann/wp/" <http://leenissen.dk/fann/wp/>)
>>> +    (synopsis "Fast Artificial Neural Network")
>>> +    (description
>>> +     "FANN is a free open source neural network library, which implements
>>> +multilayer artificial neural networks in C with support for both fully
>>> +connected and sparsely connected networks.")
>>> +    (license license:lgpl2.1)))
>> Otherwise LGTM. Can you send an updated patch please?
>>
>>
>> Thanks, ben
>>
>
> --
> Mark Meyer
> [email-masked]
>