all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* developing for guix with git
@ 2016-01-28 11:31 Ni* Gillmann
  2016-01-28 20:29 ` Efraim Flashner
  0 siblings, 1 reply; 11+ messages in thread
From: Ni* Gillmann @ 2016-01-28 11:31 UTC (permalink / raw)
  To: help-guix

Following yesterdays "bug" I have a question which is only partly Guix
related and more development/git style related.

I am used to develop on things which I do not have to build and they
usually just work. Branching was never an issue.
However with guix it started to become one apparently, as I can build
the guix sourcetree from git clone with the master checkout but not
while being on the local branch I created to work on lispf4, which does
track the master.

I know it used to work, but this is strange for me. What are some ways,
other than directly working on master and rebasing often, people here do
interact with git while working on guix? In other words, how do you
locally handle guix development?

-- 
ng/ni*
vcard: http://krosos.sdf.org

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: developing for guix with git
  2016-01-28 11:31 developing for guix with git Ni* Gillmann
@ 2016-01-28 20:29 ` Efraim Flashner
  2016-01-31 16:56   ` Nils Gillmann
  0 siblings, 1 reply; 11+ messages in thread
From: Efraim Flashner @ 2016-01-28 20:29 UTC (permalink / raw)
  To: Ni* Gillmann; +Cc: help-guix

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

On Thu, 28 Jan 2016 12:31:09 +0100
Ni* Gillmann <niasterisk@grrlz.net> wrote:

> Following yesterdays "bug" I have a question which is only partly Guix
> related and more development/git style related.
> 
> I am used to develop on things which I do not have to build and they
> usually just work. Branching was never an issue.
> However with guix it started to become one apparently, as I can build
> the guix sourcetree from git clone with the master checkout but not
> while being on the local branch I created to work on lispf4, which does
> track the master.
> 
> I know it used to work, but this is strange for me. What are some ways,
> other than directly working on master and rebasing often, people here do
> interact with git while working on guix? In other words, how do you
> locally handle guix development?

I know you asked for ideas that didn't involve working against master and
rebasing, but that's really pretty much what I do. I find something that I
want to package or update and work on it. If it's good, then I run `git
checkout -b $branch_name` and send the patches off to the mailing list. If it
doesn't work, then I branch it off anyway so I can come back to it later.
Every couple of days I rebase all my branches against master, with the idea
being if it doesn't fall too far behind then any issues shouldn't be too hard
to fix. Sometimes it doesn't work out well, from start to finish aria2 took
me 3 months to figure out the issue with the tests. Or anything that touches
python.scm or another high-volume file does sometimes end up with issues.

I do also have my side repo for files/programs that either need more work or
aren't going to make it in. This is pretty easy with `export
GUIX_PACKAGE_PATH=~/workspace/my-guix/` in my .bashrc. Pastee has a python
command-line uploader with no license, that doesn't go anywhere. Quassel will
end up being 3 parts and it's not always easy working with our monolithic qt
package. Once that's done I'll figure out where to put it.

I've had a couple of times where I've combined two patches and had to figure
out separating them again.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: developing for guix with git
  2016-01-28 20:29 ` Efraim Flashner
@ 2016-01-31 16:56   ` Nils Gillmann
  2016-01-31 23:49     ` Ricardo Wurmus
  0 siblings, 1 reply; 11+ messages in thread
From: Nils Gillmann @ 2016-01-31 16:56 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: help-guix

Efraim Flashner <efraim@flashner.co.il> writes:

> On Thu, 28 Jan 2016 12:31:09 +0100
> Ni* Gillmann <niasterisk@grrlz.net> wrote:
>
>> Following yesterdays "bug" I have a question which is only partly Guix
>> related and more development/git style related.
>> 
>> I am used to develop on things which I do not have to build and they
>> usually just work. Branching was never an issue.
>> However with guix it started to become one apparently, as I can build
>> the guix sourcetree from git clone with the master checkout but not
>> while being on the local branch I created to work on lispf4, which does
>> track the master.
>> 
>> I know it used to work, but this is strange for me. What are some ways,
>> other than directly working on master and rebasing often, people here do
>> interact with git while working on guix? In other words, how do you
>> locally handle guix development?
>
> I know you asked for ideas that didn't involve working against master and
> rebasing, but that's really pretty much what I do. I find something that I
> want to package or update and work on it. If it's good, then I run `git
> checkout -b $branch_name` and send the patches off to the mailing list. If it
> doesn't work, then I branch it off anyway so I can come back to it later.
> Every couple of days I rebase all my branches against master, with the idea
> being if it doesn't fall too far behind then any issues shouldn't be too hard
> to fix. Sometimes it doesn't work out well, from start to finish aria2 took
> me 3 months to figure out the issue with the tests. Or anything that touches
> python.scm or another high-volume file does sometimes end up with
> issues.

Thanks for your input, Efraim.
Do you happen to know why guix in the situation I described,
being on an up to date branch following master refuses to build,
but once I switch to master branch, make clean, make clean-go (or
go-clean?) and run make (and the other commands) again it builds
successfully? This was my initial confusion.
I might have a thing or 2 to learn about rebasing and branching, but in
theory from what I know it shouldn't really matter which branch I am
on unless something's corrupted or broken.

>
> I do also have my side repo for files/programs that either need more work or
> aren't going to make it in. This is pretty easy with `export
> GUIX_PACKAGE_PATH=~/workspace/my-guix/` in my .bashrc. Pastee has a python
> command-line uploader with no license, that doesn't go anywhere. Quassel will
> end up being 3 parts and it's not always easy working with our monolithic qt
> package. Once that's done I'll figure out where to put it.
>
> I've had a couple of times where I've combined two patches and had to figure
> out separating them again.

-- 
ng/ni*
vcard: http://krosos.sdf.org

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: developing for guix with git
  2016-01-31 16:56   ` Nils Gillmann
@ 2016-01-31 23:49     ` Ricardo Wurmus
  2016-02-02 21:28       ` Nils Gillmann
  0 siblings, 1 reply; 11+ messages in thread
From: Ricardo Wurmus @ 2016-01-31 23:49 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: help-guix


Nils Gillmann <niasterisk@grrlz.net> writes:

> Do you happen to know why guix in the situation I described,
> being on an up to date branch following master refuses to build,
> but once I switch to master branch, make clean, make clean-go (or
> go-clean?) and run make (and the other commands) again it builds
> successfully? This was my initial confusion.

It’s hard to say without being able to take a look at the state of the
branch.  It is possible that a change you introduced in your branch
broke things.  Maybe you could share error messages?

> I might have a thing or 2 to learn about rebasing and branching, but in
> theory from what I know it shouldn't really matter which branch I am
> on unless something's corrupted or broken.

I think of a branch as a pointer to a some commit in the graph.
Rebasing takes a range of commits and applies the changes they introduce
on top of some other commit.

When things suddenly break after rebasing the reason is usually in of
two categories:

* one of your (now relocated) commits broke something

* after rebasing, master commits that have been added since you first
  committed your changes are now part of the history of your commits —
  maybe these commits altered assumptions that were still valid when you
  first committed your changes.  An example for this is when a variable
  was renamed or moved in a master commit and your commits still use the
  old name.

Sharing some error output with us might help us identify what’s going on
in your case.  In any case, you could try bisecting your changes (divide
the set of your commits in half, and see if things are broken at that
commit; then recurse until you find the commit that introduced the cause
for the failure).  This works best when you made many small commits.

I’m using multiple branches for things that take me too long.  For most
developments, however, I’m working in a local “wip” branch, which is
regularly and in short intervals rebased onto master.

~~ Ricardo

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: developing for guix with git
  2016-01-31 23:49     ` Ricardo Wurmus
@ 2016-02-02 21:28       ` Nils Gillmann
  2016-02-02 23:56         ` Leo Famulari
  2016-02-03  0:46         ` Nils Gillmann
  0 siblings, 2 replies; 11+ messages in thread
From: Nils Gillmann @ 2016-02-02 21:28 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

Ricardo Wurmus <rekado@elephly.net> writes:

> Nils Gillmann <niasterisk@grrlz.net> writes:
>
>> Do you happen to know why guix in the situation I described,
>> being on an up to date branch following master refuses to build,
>> but once I switch to master branch, make clean, make clean-go (or
>> go-clean?) and run make (and the other commands) again it builds
>> successfully? This was my initial confusion.
>
> It’s hard to say without being able to take a look at the state of the
> branch.  It is possible that a change you introduced in your branch
> broke things.  Maybe you could share error messages?

I'll inline all the things here now:

Generation 29	Feb 02 2016 13:20:50	(current)
  rxvt-unicode	9.21	out	/gnu/store/2wrafhvqzzqzsks3mxz1lkd37phdaq5p-rxvt-unicode-9.21
  mc	4.8.11	out	/gnu/store/8263vk2gf013ryg4hgjwdpln6xfhyfwz-mc-4.8.11
  getmail	4.48.0	out	/gnu/store/xay7x51ivl6dbk5gy2nd5xrxifwm4v4y-getmail-4.48.0
  youtube-dl	2016.01.09	out	/gnu/store/w53rdk9hs4v4mm2lrdjj15p27fqfdf2m-youtube-dl-2016.01.09
  setxkbmap	1.3.0	out	/gnu/store/cnq54ch7vhdm0cbgbgq85lbn7xsxm96i-setxkbmap-1.3.0
  xrdb	1.1.0	out	/gnu/store/gfwx3ngj1kp349p62lrls5iismicp2v1-xrdb-1.1.0
  tmux	2.1	out	/gnu/store/7a5brlhz30scv6hk9pj9nmyxvnjyv6qk-tmux-2.1
  torsocks	2.0.0	out	/gnu/store/zmy09dkn8d9avv3f6626fw6ch4pp74v2-torsocks-2.0.0
  tor	0.2.7.6	out	/gnu/store/rvzq8czssqzrfln7qis7ai734afl4qjp-tor-0.2.7.6
  gnurl	7.45.0	out	/gnu/store/rdvcazdkm3lf0zzk4nrkmdz34h2nhyfl-gnurl-7.45.0
  wget	1.17.1	out	/gnu/store/z1vby28dy003jyvidzbbz3n2749ajnp1-wget-1.17.1
  icecat	38.5.2-gnu1	out	/gnu/store/626i6n86wv224cw5r3a5d81ylsxjwc2m-icecat-38.5.2-gnu1
  alsa-utils	1.0.27.2	out	/gnu/store/kmr9vzpm2kbf27mjvamln2j4wzw37bpp-alsa-utils-1.0.27.2
  openssh	7.1p2	out	/gnu/store/b5f6p26qc6wxik9xln1igzm3l583k7jf-openssh-7.1p2
  git	2.6.3	out	/gnu/store/8rps27mcwn0shmbnlad92ss5xj67xq38-git-2.6.3
  font-gnu-freefont-ttf	20100919	out	/gnu/store/d8ia7qyyb0s9vlh54ld5nch094ap5jjb-font-gnu-freefont-ttf-20100919
  font-gnu-unifont	8.0.01	out	/gnu/store/2dqimxh602s0gpspki8gda5pqpfih0v4-font-gnu-unifont-8.0.01
  font-dejavu	2.34	out	/gnu/store/7bwkylkasi9y8hgrvhab2vvcf0nkprfh-font-dejavu-2.34
  font-liberation	2.00.1	out	/gnu/store/k2ip6g97clhwxqnjhmgxby0wsxx5fixf-font-liberation-2.00.1
  w3m	0.5.3	out	/gnu/store/v211k3mj9anryn4c8ywyj63gwzbbr0wz-w3m-0.5.3
  gnupg	2.1.10	out	/gnu/store/576kah5kcbrvzh8fpr3ngpjijb9fqpwc-gnupg-2.1.10
  libreoffice	5.0.3.2	out	/gnu/store/dxiy3gbs63v7qp4nz0np1ih8dknjss4r-libreoffice-5.0.3.2
  autoconf	2.69	out	/gnu/store/hnpdjr1m7xa86y2878ca238b10k5dg0s-autoconf-2.69
  automake	1.15	out	/gnu/store/3ry089p6p36ng2l2i7gcdqq5hs8khafy-automake-1.15
  gettext	0.19.7	out	/gnu/store/3iz6asihwkcxj1ldl4qgd57iwmwww9s0-gettext-0.19.7
  texinfo	6.0	out	/gnu/store/m3zf2d3cla6jaj61l2c8nw9iljwl1qz8-texinfo-6.0
  graphviz	2.38.0	out	/gnu/store/f2kvgjgdknwqchfvjq4jlff0jppj0ryq-graphviz-2.38.0
  help2man	1.47.3	out	/gnu/store/pmvdfp0ql2nzjypiagy1qk9fwi7l2d60-help2man-1.47.3
  pkg-config	0.29	out	/gnu/store/w7c0zs0qgzpnx5k6g19dja55yabk4350-pkg-config-0.29
  libgcrypt	1.6.4	out	/gnu/store/v1yd1grpqy6ls6m29lvb8fy085cbajj7-libgcrypt-1.6.4
  guile	2.0.11	out	/gnu/store/b44k6wx7nxn0kh2kchlazgas2ybc576v-guile-2.0.11
  make	4.1	out	/gnu/store/vpy992qc1brf3av6ap7si4byq1w5mx2x-make-4.1
  guile-json	0.4.0	out	/gnu/store/wy4wyxh1jfi0g8afc777p7zvqpwknbqm-guile-json-0.4.0
  sqlite	3.10.0	out	/gnu/store/ks7v9hzvqkf7dnx0dwmlwa2zrdhdzcym-sqlite-3.10.0
  bzip2	1.0.6	out	/gnu/store/pnw3jr91sas9w3w9f4vkfr5nn0g8fcr8-bzip2-1.0.6
  gcc-toolchain	5.3.0	out	/gnu/store/p16a8dv54k35x4a8mqf5k9i1viwvxja7-gcc-toolchain-5.3.0
  bind-utils	9.10.3-P3	out	/gnu/store/x7q7zx4vvsiasgify34ig0mdip0wrynl-bind-utils-9.10.3-P3
  zathura	0.3.3	out	/gnu/store/vb87y4g5ciygjhl8jcmnkns6h06pv4ps-zathura-0.3.3
  mpv	0.15.0	out	/gnu/store/aywf9b8cnsaqrsgb959v4mbhxiqmzifz-mpv-0.15.0
  paredit	24	out	/gnu/store/8b4smgyq2v9bcvlymmj6v0pi0n6x62w4-paredit-24
  notmuch	0.21	out	/gnu/store/z4xc7rlg3v4y8bayfk9xc3i92pnmfqdk-notmuch-0.21
  gnunet	0.10.1	out	/gnu/store/mllvd1d2mj53x3hg7jhs5ffqhj3az6mg-gnunet-0.10.1
  bbdb	3.1.2	out	/gnu/store/fm2gf61awrrn4hinpfz2gwgr633aq02g-bbdb-3.1.2
  magit	2.4.0	out	/gnu/store/b8yvdq2ggbb350fgi6d4ivknkd3xq2ih-magit-2.4.0
  emacs-w3m	1.4.538+0.20141022	out	/gnu/store/nxax4hgwbqazja34fd586vxn99d1yiw9-emacs-w3m-1.4.538+0.20141022
  emacs	24.5	out	/gnu/store/bx4yz76ja498jkmk90dl8vivpnncnk69-emacs-24.5
  geiser	0.8.1	out	/gnu/store/cr2265s6dahx5rdxvmhb4v3r3lhf8hzq-geiser-0.8.1
  weechat	1.4	out	/gnu/store/694qv9c5yb16h5if4vjshnbkyv7pph1d-weechat-1.4
  msmtp	1.6.3	out	/gnu/store/r1x2h94j0wb09ccvgp3psrccx476ms4l-msmtp-1.6.3

in the environment (git checkout wip-lispf4; make clean; make clean-go;
guix environment guix git; ./bootstrap; ./configure
--localstatedir=/var) all the steps listed succeed, however make:

niasterisk@khazad-dum ~/projects/guix_project/guix [env]$ make
  GEN      doc/os-config-bare-bones.texi
  GEN      doc/os-config-desktop.texi
  GEN      nix/libstore/schema.sql.hh
make  all-recursive
make[1]: Entering directory '/home/niasterisk/projects/guix_project/guix'
Making all in po/guix
make[2]: Entering directory '/home/niasterisk/projects/guix_project/guix/po/guix'
make[2]: Leaving directory '/home/niasterisk/projects/guix_project/guix/po/guix'
Making all in po/packages
make[2]: Entering directory '/home/niasterisk/projects/guix_project/guix/po/packages'
make[2]: Leaving directory '/home/niasterisk/projects/guix_project/guix/po/packages'
make[2]: Entering directory '/home/niasterisk/projects/guix_project/guix'
  CXX      nix/boost/format/libformat_a-free_funcs.o
  CXX      nix/boost/format/libformat_a-parsing.o
  CXX      nix/boost/format/libformat_a-format_implementation.o
  AR       libformat.a
ar: `u' modifier ignored since `D' is the default (see `U')
  CXX      nix/libutil/libutil_a-archive.o
  CXX      nix/libutil/libutil_a-affinity.o
  CXX      nix/libutil/libutil_a-serialise.o
  CXX      nix/libutil/libutil_a-util.o
  CXX      nix/libutil/libutil_a-xml-writer.o
  CXX      nix/libutil/libutil_a-hash.o
  CXX      nix/libutil/libutil_a-gcrypt-hash.o
  AR       libutil.a
ar: `u' modifier ignored since `D' is the default (see `U')
  CXX      nix/libstore/libstore_a-gc.o
  CXX      nix/libstore/libstore_a-globals.o
  CXX      nix/libstore/libstore_a-misc.o
  CXX      nix/libstore/libstore_a-references.o
  CXX      nix/libstore/libstore_a-store-api.o
  CXX      nix/libstore/libstore_a-optimise-store.o
  CXX      nix/libstore/libstore_a-local-store.o
  CXX      nix/libstore/libstore_a-build.o
  CXX      nix/libstore/libstore_a-pathlocks.o
  CXX      nix/libstore/libstore_a-derivations.o
  AR       libstore.a
ar: `u' modifier ignored since `D' is the default (see `U')
  CXX      nix/nix-daemon/guix_daemon-nix-daemon.o
  CXX      nix/nix-daemon/guix_daemon-guix-daemon.o
  CXXLD    guix-daemon
  CXX      nix/guix-register/guix_register-guix-register.o
  CXXLD    guix-register
Compiling Scheme modules...
  LOAD     (guix base32)
  LOAD     (guix base64)
  LOAD     (guix cpio)
  LOAD     (guix records)
  LOAD     (guix gcrypt)
  LOAD     (guix hash)
  LOAD     (guix pk-crypto)
  LOAD     (guix pki)
  LOAD     (guix utils)
  LOAD     (guix sets)
  LOAD     (guix download)
  LOAD     (guix git-download)
  LOAD     (guix monads)
  LOAD     (guix monad-repl)
  LOAD     (guix gexp)
  LOAD     (guix profiles)
  LOAD     (guix serialization)
  LOAD     (guix nar)
  LOAD     (guix derivations)
  LOAD     (guix gnu-maintenance)
  LOAD     (guix upstream)
  LOAD     (guix licenses)
  LOAD     (guix graph)
  LOAD     (guix cve)
  LOAD     (guix build-system)
  LOAD     (guix build-system cmake)
  LOAD     (guix build-system emacs)
  LOAD     (guix build-system glib-or-gtk)
  LOAD     (guix build-system gnu)
  LOAD     (guix build-system haskell)
  LOAD     (guix build-system perl)
  LOAD     (guix build-system python)
  LOAD     (guix build-system waf)
  LOAD     (guix build-system r)
  LOAD     (guix build-system ruby)
  LOAD     (guix build-system trivial)
  LOAD     (guix ftp-client)
  LOAD     (guix http-client)
  LOAD     (guix gnupg)
  LOAD     (guix elf)
  LOAD     (guix store)
  LOAD     (guix cvs-download)
  LOAD     (guix svn-download)
  LOAD     (guix ui)
  LOAD     (guix build download)
  LOAD     (guix build cmake-build-system)
  LOAD     (guix build emacs-build-system)
  LOAD     (guix build git)
  LOAD     (guix build glib-or-gtk-build-system)
  LOAD     (guix build gnu-build-system)
  LOAD     (guix build gnu-dist)
  LOAD     (guix build perl-build-system)
  LOAD     (guix build python-build-system)
  LOAD     (guix build r-build-system)
  LOAD     (guix build ruby-build-system)
  LOAD     (guix build waf-build-system)
  LOAD     (guix build haskell-build-system)
  LOAD     (guix build store-copy)
  LOAD     (guix build utils)
  LOAD     (guix build union)
  LOAD     (guix build profiles)
  LOAD     (guix build pull)
  LOAD     (guix build rpath)
  LOAD     (guix build cvs)
  LOAD     (guix build svn)
  LOAD     (guix build gremlin)
  LOAD     (guix build emacs-utils)
  LOAD     (guix build graft)
  LOAD     (guix search-paths)
  LOAD     (guix packages)
  LOAD     (guix import utils)
  LOAD     (guix import gnu)
  LOAD     (guix import snix)
  LOAD     (guix import cabal)
  LOAD     (guix import cran)
  LOAD     (guix import hackage)
  LOAD     (guix import elpa)
  LOAD     (guix scripts)
  LOAD     (guix scripts download)
  LOAD     (guix scripts build)
  LOAD     (guix scripts archive)
  LOAD     (guix scripts import)
  LOAD     (guix scripts package)
;;; Failed to autoload canonical-package in (gnu packages base):
;;; ERROR: Unbound variable: git-fetch
  LOAD     (guix scripts gc)
  LOAD     (guix scripts hash)
  LOAD     (guix scripts pull)
  LOAD     (guix scripts substitute)
  LOAD     (guix scripts authenticate)
  LOAD     (guix scripts refresh)
Backtrace:
In unknown file:
   ?: 19 [primitive-load-path "guix/scripts/refresh" ...]
In ice-9/eval.scm:
 505: 18 [#<procedure 23e15c0 at ice-9/eval.scm:499:4 (exp)> (define-module # # ...)]
In ice-9/psyntax.scm:
1106: 17 [expand-top-sequence ((define-module # # # ...)) () ((top)) ...]
 989: 16 [scan ((define-module (guix scripts refresh) #:use-module ...)) () ...]
 279: 15 [scan ((#(syntax-object let # ...) (#) (# #) ...)) () ...]
In ice-9/eval.scm:
 411: 14 [eval # ()]
In ice-9/boot-9.scm:
2951: 13 [define-module* (guix scripts refresh) #:filename ...]
2926: 12 [resolve-imports (((guix ui)) ((guix hash)) ((guix scripts)) ...)]
2864: 11 [resolve-interface (gnu packages commencement) #:select ...]
2789: 10 [#<procedure 2495500 at ice-9/boot-9.scm:2777:4 (name #:optional autoload version #:key ensure)> # ...]
3065: 9 [try-module-autoload (gnu packages commencement) #f]
2401: 8 [save-module-excursion #<procedure 34c91b0 at ice-9/boot-9.scm:3066:17 ()>]
3085: 7 [#<procedure 34c91b0 at ice-9/boot-9.scm:3066:17 ()>]
In unknown file:
   ?: 6 [primitive-load-path "gnu/packages/commencement" ...]
In ice-9/eval.scm:
 453: 5 [eval # ()]
 387: 4 [eval # ()]
 387: 3 [eval # #]
 387: 2 [eval # #]
 393: 1 [eval # #]
In unknown file:
   ?: 0 [memoize-variable-access! #<memoized gnu-make> #<directory # 747aab0>]

ERROR: In procedure memoize-variable-access!:
ERROR: Unbound variable: gnu-make
Makefile:4704: recipe for target 'make-go' failed
make[2]: *** [make-go] Error 1
make[2]: Leaving directory '/home/niasterisk/projects/guix_project/guix'
Makefile:3856: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/niasterisk/projects/guix_project/guix'
Makefile:2467: recipe for target 'all' failed
make: *** [all] Error 2

Those are issues which appear only on the new branch created with 'git
checkout -b wip-lispf4' and started working on it to the point where the
lispf4 should compile.

--ng
>
>> I might have a thing or 2 to learn about rebasing and branching, but in
>> theory from what I know it shouldn't really matter which branch I am
>> on unless something's corrupted or broken.
>
> I think of a branch as a pointer to a some commit in the graph.
> Rebasing takes a range of commits and applies the changes they introduce
> on top of some other commit.
>
> When things suddenly break after rebasing the reason is usually in of
> two categories:
>
> * one of your (now relocated) commits broke something
>
> * after rebasing, master commits that have been added since you first
>   committed your changes are now part of the history of your commits —
>   maybe these commits altered assumptions that were still valid when you
>   first committed your changes.  An example for this is when a variable
>   was renamed or moved in a master commit and your commits still use the
>   old name.
>
> Sharing some error output with us might help us identify what’s going on
> in your case.  In any case, you could try bisecting your changes (divide
> the set of your commits in half, and see if things are broken at that
> commit; then recurse until you find the commit that introduced the cause
> for the failure).  This works best when you made many small commits.
>
> I’m using multiple branches for things that take me too long.  For most
> developments, however, I’m working in a local “wip” branch, which is
> regularly and in short intervals rebased onto master.
>
> ~~ Ricardo
>

-- 
ng/ni*
vcard: http://krosos.sdf.org

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: developing for guix with git
  2016-02-02 21:28       ` Nils Gillmann
@ 2016-02-02 23:56         ` Leo Famulari
  2016-02-03  0:51           ` Nils Gillmann
  2016-02-03  0:46         ` Nils Gillmann
  1 sibling, 1 reply; 11+ messages in thread
From: Leo Famulari @ 2016-02-02 23:56 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: help-guix

On Tue, Feb 02, 2016 at 10:28:25PM +0100, Nils Gillmann wrote:
> Ricardo Wurmus <rekado@elephly.net> writes:
> 
> > Nils Gillmann <niasterisk@grrlz.net> writes:
> >
> >> Do you happen to know why guix in the situation I described,
> >> being on an up to date branch following master refuses to build,
> >> but once I switch to master branch, make clean, make clean-go (or
> >> go-clean?) and run make (and the other commands) again it builds
> >> successfully? This was my initial confusion.
> >
> > It’s hard to say without being able to take a look at the state of the
> > branch.  It is possible that a change you introduced in your branch
> > broke things.  Maybe you could share error messages?
> 
> I'll inline all the things here now:

[...]

> ;;; ERROR: Unbound variable: git-fetch

Did you import (guix git-download)?

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: developing for guix with git
  2016-02-02 21:28       ` Nils Gillmann
  2016-02-02 23:56         ` Leo Famulari
@ 2016-02-03  0:46         ` Nils Gillmann
  1 sibling, 0 replies; 11+ messages in thread
From: Nils Gillmann @ 2016-02-03  0:46 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

I hope I can turn my current confusion and the notes I am taking to
something productive to beginners documentation/guide at some point.

So what happened today was:
- I tried the build of the sourcetree described below in some
variations. Failed.
- I mounted an external disk with what used to be my working repo of the
source before I made the decision to not rely on external disks that
much. switched to some branch on this disk I was working on, excluding
problems with the file I was working on it did theoretically build.

Now I wonder what could be the difference? Why does my current checkout
fail, but the other one doesn't?

iirc the current one went:
git clone $url-on-sv-guix
git checkout -b wip-lispf4
emacs gnu/packages/lisp.scm and work on that file, save it but not
commit
guix environment guix (also tried adding git make)
make clean-recursive
./bootstrap
./configure --localstatedir=/var
make check

what would be a simple step by step command list to get to the point of
a working branch which can build?

I feel like I am asking weird questions and it might be that I just try
too much too hard to see where the problem is so that I lost track of
the actual problem.

Nils Gillmann <niasterisk@grrlz.net> writes:

> Ricardo Wurmus <rekado@elephly.net> writes:
>
>> Nils Gillmann <niasterisk@grrlz.net> writes:
>>
>>> Do you happen to know why guix in the situation I described,
>>> being on an up to date branch following master refuses to build,
>>> but once I switch to master branch, make clean, make clean-go (or
>>> go-clean?) and run make (and the other commands) again it builds
>>> successfully? This was my initial confusion.
>>
>> It’s hard to say without being able to take a look at the state of the
>> branch.  It is possible that a change you introduced in your branch
>> broke things.  Maybe you could share error messages?
>
> I'll inline all the things here now:
>
> Generation 29	Feb 02 2016 13:20:50	(current)
>   rxvt-unicode	9.21	out	/gnu/store/2wrafhvqzzqzsks3mxz1lkd37phdaq5p-rxvt-unicode-9.21
>   mc	4.8.11	out	/gnu/store/8263vk2gf013ryg4hgjwdpln6xfhyfwz-mc-4.8.11
>   getmail	4.48.0	out	/gnu/store/xay7x51ivl6dbk5gy2nd5xrxifwm4v4y-getmail-4.48.0
>   youtube-dl	2016.01.09	out	/gnu/store/w53rdk9hs4v4mm2lrdjj15p27fqfdf2m-youtube-dl-2016.01.09
>   setxkbmap	1.3.0	out	/gnu/store/cnq54ch7vhdm0cbgbgq85lbn7xsxm96i-setxkbmap-1.3.0
>   xrdb	1.1.0	out	/gnu/store/gfwx3ngj1kp349p62lrls5iismicp2v1-xrdb-1.1.0
>   tmux	2.1	out	/gnu/store/7a5brlhz30scv6hk9pj9nmyxvnjyv6qk-tmux-2.1
>   torsocks	2.0.0	out	/gnu/store/zmy09dkn8d9avv3f6626fw6ch4pp74v2-torsocks-2.0.0
>   tor	0.2.7.6	out	/gnu/store/rvzq8czssqzrfln7qis7ai734afl4qjp-tor-0.2.7.6
>   gnurl	7.45.0	out	/gnu/store/rdvcazdkm3lf0zzk4nrkmdz34h2nhyfl-gnurl-7.45.0
>   wget	1.17.1	out	/gnu/store/z1vby28dy003jyvidzbbz3n2749ajnp1-wget-1.17.1
>   icecat	38.5.2-gnu1	out	/gnu/store/626i6n86wv224cw5r3a5d81ylsxjwc2m-icecat-38.5.2-gnu1
>   alsa-utils	1.0.27.2	out	/gnu/store/kmr9vzpm2kbf27mjvamln2j4wzw37bpp-alsa-utils-1.0.27.2
>   openssh	7.1p2	out	/gnu/store/b5f6p26qc6wxik9xln1igzm3l583k7jf-openssh-7.1p2
>   git	2.6.3	out	/gnu/store/8rps27mcwn0shmbnlad92ss5xj67xq38-git-2.6.3
>   font-gnu-freefont-ttf	20100919	out	/gnu/store/d8ia7qyyb0s9vlh54ld5nch094ap5jjb-font-gnu-freefont-ttf-20100919
>   font-gnu-unifont	8.0.01	out	/gnu/store/2dqimxh602s0gpspki8gda5pqpfih0v4-font-gnu-unifont-8.0.01
>   font-dejavu	2.34	out	/gnu/store/7bwkylkasi9y8hgrvhab2vvcf0nkprfh-font-dejavu-2.34
>   font-liberation	2.00.1	out	/gnu/store/k2ip6g97clhwxqnjhmgxby0wsxx5fixf-font-liberation-2.00.1
>   w3m	0.5.3	out	/gnu/store/v211k3mj9anryn4c8ywyj63gwzbbr0wz-w3m-0.5.3
>   gnupg	2.1.10	out	/gnu/store/576kah5kcbrvzh8fpr3ngpjijb9fqpwc-gnupg-2.1.10
>   libreoffice	5.0.3.2	out	/gnu/store/dxiy3gbs63v7qp4nz0np1ih8dknjss4r-libreoffice-5.0.3.2
>   autoconf	2.69	out	/gnu/store/hnpdjr1m7xa86y2878ca238b10k5dg0s-autoconf-2.69
>   automake	1.15	out	/gnu/store/3ry089p6p36ng2l2i7gcdqq5hs8khafy-automake-1.15
>   gettext	0.19.7	out	/gnu/store/3iz6asihwkcxj1ldl4qgd57iwmwww9s0-gettext-0.19.7
>   texinfo	6.0	out	/gnu/store/m3zf2d3cla6jaj61l2c8nw9iljwl1qz8-texinfo-6.0
>   graphviz	2.38.0	out	/gnu/store/f2kvgjgdknwqchfvjq4jlff0jppj0ryq-graphviz-2.38.0
>   help2man	1.47.3	out	/gnu/store/pmvdfp0ql2nzjypiagy1qk9fwi7l2d60-help2man-1.47.3
>   pkg-config	0.29	out	/gnu/store/w7c0zs0qgzpnx5k6g19dja55yabk4350-pkg-config-0.29
>   libgcrypt	1.6.4	out	/gnu/store/v1yd1grpqy6ls6m29lvb8fy085cbajj7-libgcrypt-1.6.4
>   guile	2.0.11	out	/gnu/store/b44k6wx7nxn0kh2kchlazgas2ybc576v-guile-2.0.11
>   make	4.1	out	/gnu/store/vpy992qc1brf3av6ap7si4byq1w5mx2x-make-4.1
>   guile-json	0.4.0	out	/gnu/store/wy4wyxh1jfi0g8afc777p7zvqpwknbqm-guile-json-0.4.0
>   sqlite	3.10.0	out	/gnu/store/ks7v9hzvqkf7dnx0dwmlwa2zrdhdzcym-sqlite-3.10.0
>   bzip2	1.0.6	out	/gnu/store/pnw3jr91sas9w3w9f4vkfr5nn0g8fcr8-bzip2-1.0.6
>   gcc-toolchain	5.3.0	out	/gnu/store/p16a8dv54k35x4a8mqf5k9i1viwvxja7-gcc-toolchain-5.3.0
>   bind-utils	9.10.3-P3	out	/gnu/store/x7q7zx4vvsiasgify34ig0mdip0wrynl-bind-utils-9.10.3-P3
>   zathura	0.3.3	out	/gnu/store/vb87y4g5ciygjhl8jcmnkns6h06pv4ps-zathura-0.3.3
>   mpv	0.15.0	out	/gnu/store/aywf9b8cnsaqrsgb959v4mbhxiqmzifz-mpv-0.15.0
>   paredit	24	out	/gnu/store/8b4smgyq2v9bcvlymmj6v0pi0n6x62w4-paredit-24
>   notmuch	0.21	out	/gnu/store/z4xc7rlg3v4y8bayfk9xc3i92pnmfqdk-notmuch-0.21
>   gnunet	0.10.1	out	/gnu/store/mllvd1d2mj53x3hg7jhs5ffqhj3az6mg-gnunet-0.10.1
>   bbdb	3.1.2	out	/gnu/store/fm2gf61awrrn4hinpfz2gwgr633aq02g-bbdb-3.1.2
>   magit	2.4.0	out	/gnu/store/b8yvdq2ggbb350fgi6d4ivknkd3xq2ih-magit-2.4.0
>   emacs-w3m	1.4.538+0.20141022	out	/gnu/store/nxax4hgwbqazja34fd586vxn99d1yiw9-emacs-w3m-1.4.538+0.20141022
>   emacs	24.5	out	/gnu/store/bx4yz76ja498jkmk90dl8vivpnncnk69-emacs-24.5
>   geiser	0.8.1	out	/gnu/store/cr2265s6dahx5rdxvmhb4v3r3lhf8hzq-geiser-0.8.1
>   weechat	1.4	out	/gnu/store/694qv9c5yb16h5if4vjshnbkyv7pph1d-weechat-1.4
>   msmtp	1.6.3	out	/gnu/store/r1x2h94j0wb09ccvgp3psrccx476ms4l-msmtp-1.6.3
>
> in the environment (git checkout wip-lispf4; make clean; make clean-go;
> guix environment guix git; ./bootstrap; ./configure
> --localstatedir=/var) all the steps listed succeed, however make:
>
> niasterisk@khazad-dum ~/projects/guix_project/guix [env]$ make
>   GEN      doc/os-config-bare-bones.texi
>   GEN      doc/os-config-desktop.texi
>   GEN      nix/libstore/schema.sql.hh
> make  all-recursive
> make[1]: Entering directory '/home/niasterisk/projects/guix_project/guix'
> Making all in po/guix
> make[2]: Entering directory '/home/niasterisk/projects/guix_project/guix/po/guix'
> make[2]: Leaving directory '/home/niasterisk/projects/guix_project/guix/po/guix'
> Making all in po/packages
> make[2]: Entering directory '/home/niasterisk/projects/guix_project/guix/po/packages'
> make[2]: Leaving directory '/home/niasterisk/projects/guix_project/guix/po/packages'
> make[2]: Entering directory '/home/niasterisk/projects/guix_project/guix'
>   CXX      nix/boost/format/libformat_a-free_funcs.o
>   CXX      nix/boost/format/libformat_a-parsing.o
>   CXX      nix/boost/format/libformat_a-format_implementation.o
>   AR       libformat.a
> ar: `u' modifier ignored since `D' is the default (see `U')
>   CXX      nix/libutil/libutil_a-archive.o
>   CXX      nix/libutil/libutil_a-affinity.o
>   CXX      nix/libutil/libutil_a-serialise.o
>   CXX      nix/libutil/libutil_a-util.o
>   CXX      nix/libutil/libutil_a-xml-writer.o
>   CXX      nix/libutil/libutil_a-hash.o
>   CXX      nix/libutil/libutil_a-gcrypt-hash.o
>   AR       libutil.a
> ar: `u' modifier ignored since `D' is the default (see `U')
>   CXX      nix/libstore/libstore_a-gc.o
>   CXX      nix/libstore/libstore_a-globals.o
>   CXX      nix/libstore/libstore_a-misc.o
>   CXX      nix/libstore/libstore_a-references.o
>   CXX      nix/libstore/libstore_a-store-api.o
>   CXX      nix/libstore/libstore_a-optimise-store.o
>   CXX      nix/libstore/libstore_a-local-store.o
>   CXX      nix/libstore/libstore_a-build.o
>   CXX      nix/libstore/libstore_a-pathlocks.o
>   CXX      nix/libstore/libstore_a-derivations.o
>   AR       libstore.a
> ar: `u' modifier ignored since `D' is the default (see `U')
>   CXX      nix/nix-daemon/guix_daemon-nix-daemon.o
>   CXX      nix/nix-daemon/guix_daemon-guix-daemon.o
>   CXXLD    guix-daemon
>   CXX      nix/guix-register/guix_register-guix-register.o
>   CXXLD    guix-register
> Compiling Scheme modules...
>   LOAD     (guix base32)
>   LOAD     (guix base64)
>   LOAD     (guix cpio)
>   LOAD     (guix records)
>   LOAD     (guix gcrypt)
>   LOAD     (guix hash)
>   LOAD     (guix pk-crypto)
>   LOAD     (guix pki)
>   LOAD     (guix utils)
>   LOAD     (guix sets)
>   LOAD     (guix download)
>   LOAD     (guix git-download)
>   LOAD     (guix monads)
>   LOAD     (guix monad-repl)
>   LOAD     (guix gexp)
>   LOAD     (guix profiles)
>   LOAD     (guix serialization)
>   LOAD     (guix nar)
>   LOAD     (guix derivations)
>   LOAD     (guix gnu-maintenance)
>   LOAD     (guix upstream)
>   LOAD     (guix licenses)
>   LOAD     (guix graph)
>   LOAD     (guix cve)
>   LOAD     (guix build-system)
>   LOAD     (guix build-system cmake)
>   LOAD     (guix build-system emacs)
>   LOAD     (guix build-system glib-or-gtk)
>   LOAD     (guix build-system gnu)
>   LOAD     (guix build-system haskell)
>   LOAD     (guix build-system perl)
>   LOAD     (guix build-system python)
>   LOAD     (guix build-system waf)
>   LOAD     (guix build-system r)
>   LOAD     (guix build-system ruby)
>   LOAD     (guix build-system trivial)
>   LOAD     (guix ftp-client)
>   LOAD     (guix http-client)
>   LOAD     (guix gnupg)
>   LOAD     (guix elf)
>   LOAD     (guix store)
>   LOAD     (guix cvs-download)
>   LOAD     (guix svn-download)
>   LOAD     (guix ui)
>   LOAD     (guix build download)
>   LOAD     (guix build cmake-build-system)
>   LOAD     (guix build emacs-build-system)
>   LOAD     (guix build git)
>   LOAD     (guix build glib-or-gtk-build-system)
>   LOAD     (guix build gnu-build-system)
>   LOAD     (guix build gnu-dist)
>   LOAD     (guix build perl-build-system)
>   LOAD     (guix build python-build-system)
>   LOAD     (guix build r-build-system)
>   LOAD     (guix build ruby-build-system)
>   LOAD     (guix build waf-build-system)
>   LOAD     (guix build haskell-build-system)
>   LOAD     (guix build store-copy)
>   LOAD     (guix build utils)
>   LOAD     (guix build union)
>   LOAD     (guix build profiles)
>   LOAD     (guix build pull)
>   LOAD     (guix build rpath)
>   LOAD     (guix build cvs)
>   LOAD     (guix build svn)
>   LOAD     (guix build gremlin)
>   LOAD     (guix build emacs-utils)
>   LOAD     (guix build graft)
>   LOAD     (guix search-paths)
>   LOAD     (guix packages)
>   LOAD     (guix import utils)
>   LOAD     (guix import gnu)
>   LOAD     (guix import snix)
>   LOAD     (guix import cabal)
>   LOAD     (guix import cran)
>   LOAD     (guix import hackage)
>   LOAD     (guix import elpa)
>   LOAD     (guix scripts)
>   LOAD     (guix scripts download)
>   LOAD     (guix scripts build)
>   LOAD     (guix scripts archive)
>   LOAD     (guix scripts import)
>   LOAD     (guix scripts package)
> ;;; Failed to autoload canonical-package in (gnu packages base):
> ;;; ERROR: Unbound variable: git-fetch
>   LOAD     (guix scripts gc)
>   LOAD     (guix scripts hash)
>   LOAD     (guix scripts pull)
>   LOAD     (guix scripts substitute)
>   LOAD     (guix scripts authenticate)
>   LOAD     (guix scripts refresh)
> Backtrace:
> In unknown file:
>    ?: 19 [primitive-load-path "guix/scripts/refresh" ...]
> In ice-9/eval.scm:
>  505: 18 [#<procedure 23e15c0 at ice-9/eval.scm:499:4 (exp)> (define-module # # ...)]
> In ice-9/psyntax.scm:
> 1106: 17 [expand-top-sequence ((define-module # # # ...)) () ((top)) ...]
>  989: 16 [scan ((define-module (guix scripts refresh) #:use-module ...)) () ...]
>  279: 15 [scan ((#(syntax-object let # ...) (#) (# #) ...)) () ...]
> In ice-9/eval.scm:
>  411: 14 [eval # ()]
> In ice-9/boot-9.scm:
> 2951: 13 [define-module* (guix scripts refresh) #:filename ...]
> 2926: 12 [resolve-imports (((guix ui)) ((guix hash)) ((guix scripts)) ...)]
> 2864: 11 [resolve-interface (gnu packages commencement) #:select ...]
> 2789: 10 [#<procedure 2495500 at ice-9/boot-9.scm:2777:4 (name #:optional autoload version #:key ensure)> # ...]
> 3065: 9 [try-module-autoload (gnu packages commencement) #f]
> 2401: 8 [save-module-excursion #<procedure 34c91b0 at ice-9/boot-9.scm:3066:17 ()>]
> 3085: 7 [#<procedure 34c91b0 at ice-9/boot-9.scm:3066:17 ()>]
> In unknown file:
>    ?: 6 [primitive-load-path "gnu/packages/commencement" ...]
> In ice-9/eval.scm:
>  453: 5 [eval # ()]
>  387: 4 [eval # ()]
>  387: 3 [eval # #]
>  387: 2 [eval # #]
>  393: 1 [eval # #]
> In unknown file:
>    ?: 0 [memoize-variable-access! #<memoized gnu-make> #<directory # 747aab0>]
>
> ERROR: In procedure memoize-variable-access!:
> ERROR: Unbound variable: gnu-make
> Makefile:4704: recipe for target 'make-go' failed
> make[2]: *** [make-go] Error 1
> make[2]: Leaving directory '/home/niasterisk/projects/guix_project/guix'
> Makefile:3856: recipe for target 'all-recursive' failed
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory '/home/niasterisk/projects/guix_project/guix'
> Makefile:2467: recipe for target 'all' failed
> make: *** [all] Error 2
>
> Those are issues which appear only on the new branch created with 'git
> checkout -b wip-lispf4' and started working on it to the point where the
> lispf4 should compile.
>
> --ng
>>
>>> I might have a thing or 2 to learn about rebasing and branching, but in
>>> theory from what I know it shouldn't really matter which branch I am
>>> on unless something's corrupted or broken.
>>
>> I think of a branch as a pointer to a some commit in the graph.
>> Rebasing takes a range of commits and applies the changes they introduce
>> on top of some other commit.
>>
>> When things suddenly break after rebasing the reason is usually in of
>> two categories:
>>
>> * one of your (now relocated) commits broke something
>>
>> * after rebasing, master commits that have been added since you first
>>   committed your changes are now part of the history of your commits —
>>   maybe these commits altered assumptions that were still valid when you
>>   first committed your changes.  An example for this is when a variable
>>   was renamed or moved in a master commit and your commits still use the
>>   old name.
>>
>> Sharing some error output with us might help us identify what’s going on
>> in your case.  In any case, you could try bisecting your changes (divide
>> the set of your commits in half, and see if things are broken at that
>> commit; then recurse until you find the commit that introduced the cause
>> for the failure).  This works best when you made many small commits.
>>
>> I’m using multiple branches for things that take me too long.  For most
>> developments, however, I’m working in a local “wip” branch, which is
>> regularly and in short intervals rebased onto master.
>>
>> ~~ Ricardo
>>

-- 
ng/ni*
vcard: http://krosos.sdf.org

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: developing for guix with git
  2016-02-02 23:56         ` Leo Famulari
@ 2016-02-03  0:51           ` Nils Gillmann
  2016-02-03  6:58             ` Ricardo Wurmus
  0 siblings, 1 reply; 11+ messages in thread
From: Nils Gillmann @ 2016-02-03  0:51 UTC (permalink / raw)
  To: Leo Famulari; +Cc: help-guix

Leo Famulari <leo@famulari.name> writes:

> On Tue, Feb 02, 2016 at 10:28:25PM +0100, Nils Gillmann wrote:
>> Ricardo Wurmus <rekado@elephly.net> writes:
>> 
>> > Nils Gillmann <niasterisk@grrlz.net> writes:
>> >
>> >> Do you happen to know why guix in the situation I described,
>> >> being on an up to date branch following master refuses to build,
>> >> but once I switch to master branch, make clean, make clean-go (or
>> >> go-clean?) and run make (and the other commands) again it builds
>> >> successfully? This was my initial confusion.
>> >
>> > It’s hard to say without being able to take a look at the state of the
>> > branch.  It is possible that a change you introduced in your branch
>> > broke things.  Maybe you could share error messages?
>> 
>> I'll inline all the things here now:
>
> [...]
>
>> ;;; ERROR: Unbound variable: git-fetch
>
> Did you import (guix git-download)?

I am not sure.
Adding to the Email I just wrote to this thread, how would I do this?
Isn't 'guix environment guix git' taking care of that already?
Or is this git-fetch message entirely related to the file (lisp.scm) I am
working on where I might have forgotten to add (guix git-download)?

I'll investigate further tomorrow.

Thanks,
-- 
ng/ni*
vcard: http://krosos.sdf.org

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: developing for guix with git
  2016-02-03  0:51           ` Nils Gillmann
@ 2016-02-03  6:58             ` Ricardo Wurmus
  2016-02-03 11:24               ` Nils Gillmann
  2016-02-03 12:00               ` Nils Gillmann
  0 siblings, 2 replies; 11+ messages in thread
From: Ricardo Wurmus @ 2016-02-03  6:58 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: help-guix


Nils Gillmann <niasterisk@grrlz.net> writes:

> Leo Famulari <leo@famulari.name> writes:
>
>> On Tue, Feb 02, 2016 at 10:28:25PM +0100, Nils Gillmann wrote:
>>> Ricardo Wurmus <rekado@elephly.net> writes:
>>> 
>>> > Nils Gillmann <niasterisk@grrlz.net> writes:
>>> >
>>> >> Do you happen to know why guix in the situation I described,
>>> >> being on an up to date branch following master refuses to build,
>>> >> but once I switch to master branch, make clean, make clean-go (or
>>> >> go-clean?) and run make (and the other commands) again it builds
>>> >> successfully? This was my initial confusion.
>>> >
>>> > It’s hard to say without being able to take a look at the state of the
>>> > branch.  It is possible that a change you introduced in your branch
>>> > broke things.  Maybe you could share error messages?
>>> 
>>> I'll inline all the things here now:
>>
>> [...]
>>
>>> ;;; ERROR: Unbound variable: git-fetch
>>
>> Did you import (guix git-download)?
>
> I am not sure.
> Adding to the Email I just wrote to this thread, how would I do this?

Leo means to add this to the file you have edited (lisp.scm).
Currently, there’s only

      #:use-module (guix download)

but you need to also add

      #:use-module (guix git-download)

if you’re using the ‘git-fetch’ procedure.  Because ‘git-fetch’ is
undefined otherwise Guile fails to load “lisp.scm” and this failure
cascades through everything else.

It would certainly be nice if the actual error would appear on the last
line instead of one of the errors resulting from not being able to load
“lisp.scm”.

~~ Ricardo

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: developing for guix with git
  2016-02-03  6:58             ` Ricardo Wurmus
@ 2016-02-03 11:24               ` Nils Gillmann
  2016-02-03 12:00               ` Nils Gillmann
  1 sibling, 0 replies; 11+ messages in thread
From: Nils Gillmann @ 2016-02-03 11:24 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

Ricardo Wurmus <rekado@elephly.net> writes:

> Nils Gillmann <niasterisk@grrlz.net> writes:
>
>> Leo Famulari <leo@famulari.name> writes:
>>
>>> On Tue, Feb 02, 2016 at 10:28:25PM +0100, Nils Gillmann wrote:
>>>> Ricardo Wurmus <rekado@elephly.net> writes:
>>>> 
>>>> > Nils Gillmann <niasterisk@grrlz.net> writes:
>>>> >
>>>> >> Do you happen to know why guix in the situation I described,
>>>> >> being on an up to date branch following master refuses to build,
>>>> >> but once I switch to master branch, make clean, make clean-go (or
>>>> >> go-clean?) and run make (and the other commands) again it builds
>>>> >> successfully? This was my initial confusion.
>>>> >
>>>> > It’s hard to say without being able to take a look at the state of the
>>>> > branch.  It is possible that a change you introduced in your branch
>>>> > broke things.  Maybe you could share error messages?
>>>> 
>>>> I'll inline all the things here now:
>>>
>>> [...]
>>>
>>>> ;;; ERROR: Unbound variable: git-fetch
>>>
>>> Did you import (guix git-download)?
>>
>> I am not sure.
>> Adding to the Email I just wrote to this thread, how would I do this?
>
> Leo means to add this to the file you have edited (lisp.scm).
> Currently, there’s only
>
>       #:use-module (guix download)
>
> but you need to also add
>
>       #:use-module (guix git-download)
>
> if you’re using the ‘git-fetch’ procedure.  Because ‘git-fetch’ is
> undefined otherwise Guile fails to load “lisp.scm” and this failure
> cascades through everything else.
>
> It would certainly be nice if the actual error would appear on the last
> line instead of one of the errors resulting from not being able to load
> “lisp.scm”.

I see. Okay, I'll try that and see if world builds again successfully.

I might've been preoccupied due to being a bit ill and not fully capable
in understanding what I am doing, I guess. I dislike giving answers
which are shorter than the actual message, but thanks for helping ill-me
so far. I hope this solves the problem I had.

--ng

>
> ~~ Ricardo
>

-- 
ng/ni*
vcard: http://krosos.sdf.org

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: developing for guix with git
  2016-02-03  6:58             ` Ricardo Wurmus
  2016-02-03 11:24               ` Nils Gillmann
@ 2016-02-03 12:00               ` Nils Gillmann
  1 sibling, 0 replies; 11+ messages in thread
From: Nils Gillmann @ 2016-02-03 12:00 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

Ricardo Wurmus <rekado@elephly.net> writes:

> Nils Gillmann <niasterisk@grrlz.net> writes:
>
>> Leo Famulari <leo@famulari.name> writes:
>>
>>> On Tue, Feb 02, 2016 at 10:28:25PM +0100, Nils Gillmann wrote:
>>>> Ricardo Wurmus <rekado@elephly.net> writes:
>>>> 
>>>> > Nils Gillmann <niasterisk@grrlz.net> writes:
>>>> >
>>>> >> Do you happen to know why guix in the situation I described,
>>>> >> being on an up to date branch following master refuses to build,
>>>> >> but once I switch to master branch, make clean, make clean-go (or
>>>> >> go-clean?) and run make (and the other commands) again it builds
>>>> >> successfully? This was my initial confusion.
>>>> >
>>>> > It’s hard to say without being able to take a look at the state of the
>>>> > branch.  It is possible that a change you introduced in your branch
>>>> > broke things.  Maybe you could share error messages?
>>>> 
>>>> I'll inline all the things here now:
>>>
>>> [...]
>>>
>>>> ;;; ERROR: Unbound variable: git-fetch
>>>
>>> Did you import (guix git-download)?
>>
>> I am not sure.
>> Adding to the Email I just wrote to this thread, how would I do this?
>
> Leo means to add this to the file you have edited (lisp.scm).
> Currently, there’s only
>
>       #:use-module (guix download)
>
> but you need to also add
>
>       #:use-module (guix git-download)
>
> if you’re using the ‘git-fetch’ procedure.  Because ‘git-fetch’ is
> undefined otherwise Guile fails to load “lisp.scm” and this failure
> cascades through everything else.
>
> It would certainly be nice if the actual error would appear on the last
> line instead of one of the errors resulting from not being able to load
> “lisp.scm”.
>
> ~~ Ricardo
>

Okay, I do understand now that if "make check" fails with some errors,
those are related to a file I am working on and that fixing those errors
lets "make check" pass. If one thing is broken, everything falls.
This might be information I know when I am not ill. Good that I did
waste some days on this. Problem seems solved now, by reading more into
sources.

Thanks,
-- 
ng/ni*
vcard: http://krosos.sdf.org

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2016-02-03 12:00 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-01-28 11:31 developing for guix with git Ni* Gillmann
2016-01-28 20:29 ` Efraim Flashner
2016-01-31 16:56   ` Nils Gillmann
2016-01-31 23:49     ` Ricardo Wurmus
2016-02-02 21:28       ` Nils Gillmann
2016-02-02 23:56         ` Leo Famulari
2016-02-03  0:51           ` Nils Gillmann
2016-02-03  6:58             ` Ricardo Wurmus
2016-02-03 11:24               ` Nils Gillmann
2016-02-03 12:00               ` Nils Gillmann
2016-02-03  0:46         ` Nils Gillmann

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.