unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: Thomas Sigurdsen <thomas.sigurdsen@gmail.com>
To: Arnaud B <arnaud.beaudhuin@gmail.com>
Cc: help-guix@gnu.org
Subject: Re: Trying to define a package
Date: Tue, 3 Apr 2018 21:27:16 +0200	[thread overview]
Message-ID: <20180403212716.1d74ee3d@merlin.browniehive.net> (raw)
In-Reply-To: <CAAD90k85g55HApd5hpCaVRJ7aju6BrTBsFMvEYAr8CMDKdBM8Q@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 3924 bytes --]

Hi Arnaud.

Had a look at your package, it does not have the configure script where
build-system gnu is expecting. I couldn't see it anywhere else either.

I've made a few changes that I attached. With this you can put the file in a
directory that you append to your $GUIX_PACKAGE_PATH and then just run 'guix
build freefilesync'.

I see the License file has three other licenses in addition to GPL3. But the
names look like free software too (though I'm not a lawyer). No idea how we
handle cases like that.

Also, the rest of the code tree looks very non-standard as far as the tools
I'm used go... Which is probably why you are having trouble building it.

Hope that helps a little.

Thomas

On Tue, 3 Apr 2018 19:14:34 +0200
Arnaud B <arnaud.beaudhuin@gmail.com> wrote:

> Hello everyone,
> 
> Well I'm happy to report that thanks to your advice I made some progress.
> Using the scm file attached and the command :
> *guix build -L /home/arnaud/guix_packages/gnu/packages/ -K -f
> freefilesync.scm*
> the build process starts as it should, the zip file is downloaded, checked
> and unziped as needed, and the cpp files compile normally.
> It stops at the configure script stage, apparently not finding the
> configure command.
> H
> ​ere is the relevant part :
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> *phase `unpack' succeeded after 0.3 secondsstarting phase
> `patch-usr-bin-file'phase `patch-usr-bin-file' succeeded after 0.0
> secondsstarting phase `patch-source-shebangs'phase `patch-source-shebangs'
> succeeded after 0.2 secondsstarting phase `configure'source directory:
> "/tmp/guix-build-freefilesync-9.9.drv-0/source" (relative from build:
> ".")build directory:
> "/tmp/guix-build-freefilesync-9.9.drv-0/source"configure flags:
> ("CONFIG_SHELL=/gnu/store/icz3hd36aqpjz5slyp4hhr8wsfbgiml1-bash-minimal-4.4.12/bin/bash"
> "SHELL=/gnu/store/icz3hd36aqpjz5slyp4hhr8wsfbgiml1-bash-minimal-4.4.12/bin/bash"
> "--prefix=/gnu/store/v07x6jfph9yy7bf54ibdb9z08snjn6lh-freefilesync-9.9"
> "--enable-fast-install"
> "--build=x86_64-unknown-linux-gnu")
> /gnu/store/icz3hd36aqpjz5slyp4hhr8wsfbgiml1-bash-minimal-4.4.12/bin/bash:
> ./configure: No such file or
> directory                                              phase `configure'
> failed after 0.0 secondsnote: keeping build directory
> `/tmp/guix-build-freefilesync-9.9.drv-1'builder for
> `/gnu/store/r13m30fdxvxindynh4161ca498lj3y09-freefilesync-9.9.drv' failed
> with exit code 1@ build-failed
> /gnu/store/r13m30fdxvxindynh4161ca498lj3y09-freefilesync-9.9.drv - 1
> builder for
> `/gnu/store/r13m30fdxvxindynh4161ca498lj3y09-freefilesync-9.9.drv' failed
> with exit code 1                     guix build: error: build failed: build
> of `/gnu/store/r13m30fdxvxindynh4161ca498lj3y09-freefilesync-9.9.drv'
> failed*
> This is surprising to me as, according to the manual
> <https://www.gnu.org/software/guix/manual/html_node/Defining-Packages.html>,
> configure is part of the usual set of tools found in the gnu build system.
> Let met quote :
> *"The (...) gnu-build-system represents the familiar GNU Build System,
> where packages may be configured, built, and installed with the usual
> ./configure && make && make check && make install command sequence."*
> I checked that bash, bash-minimal, bash-completion are all found in the
> store (actually in 3 differents versions after guix puil I guess).
> 
> So again I rely on your knowledge, hoping to get through eventually.
> 
> Many thanks in advance
> 
> Arnaud
> 
> PS : I reworded the package name and description as per the guidelines.
> 
> 
> 2018-04-02 21:53 GMT+02:00 Arnaud B <arnaud.beaudhuin@gmail.com>:
> 
> > ​Hello Pierre and Oleg
> >
> > Thanks a lot for the detailed and helpful answers, I will do accordingly
> > tomorrow night after work and report.
> > Cheers
> >
> >


[-- Attachment #2: freefilesync.scm --]
[-- Type: text/x-scheme, Size: 1144 bytes --]


(define-module (freefilesync)
  #:use-module (guix)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix build-system gnu)
  #:use-module (guix licenses)
  #:use-module (gnu packages bash)
  #:use-module (gnu packages compression))

(define-public freefilesync
  (package
   (name "freefilesync")
   (version "9.9")
   (source (origin
            (method url-fetch/zipbomb)
            (uri "https://www.freefilesync.org/download/FreeFileSync_9.9_Source.zip")
            (sha256
             (base32
              "0w59p5wkazrmyh9nq02wcpq4icb8k8w12f1mbm6a9mbbak4d7va3"))))
   (build-system gnu-build-system)
   (native-inputs `(("unzip" ,unzip)
                    ("bash" ,bash)))
   (synopsis "File synchronization through a GUI")
   (description "Here is an alternative to Unison, written in C++ ; it is an open source crossplatform tool that has been developped for years. Synchronization is easily setup, bidirectionnal and reliable. Beware of unwanted crapware bundled with the Windows binaries through the installer, if you need these.")
   (home-page "https://www.freefilesync.org/")
   (license gpl3)))

  parent reply	other threads:[~2018-04-03 19:27 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-02 11:50 Trying to define a package Arnaud B
2018-04-02 14:23 ` Pierre Neidhardt
2018-04-02 16:18   ` Oleg Pykhalov
2018-04-02 19:53     ` Arnaud B
2018-04-03 17:14       ` Arnaud B
2018-04-03 17:38         ` Pierre Neidhardt
2018-04-03 19:27         ` Thomas Sigurdsen [this message]
2018-04-03 19:41           ` Thomas Sigurdsen
2018-04-03 21:18             ` Arnaud B
2018-04-03 21:54               ` Arnaud B

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180403212716.1d74ee3d@merlin.browniehive.net \
    --to=thomas.sigurdsen@gmail.com \
    --cc=arnaud.beaudhuin@gmail.com \
    --cc=help-guix@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).