unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* Getting rid of "source file [...] newer than compiled" messages
@ 2019-03-28 17:55 Katherine Cox-Buday
  2019-03-28 21:40 ` Ricardo Wurmus
  0 siblings, 1 reply; 23+ messages in thread
From: Katherine Cox-Buday @ 2019-03-28 17:55 UTC (permalink / raw)
  To: help-guix

I have a Guix installation on a foreign distro, and with most any Guix
command I receive this message for different packages (depending on what
command is run). I looked at one package and found that there were no
`.go` files for the `.scm` files which are listed.

I tried a few different things to try and correct this including `guix
build --repair`, but I nothing has worked.

Is there a supported way to get rid of these issues? Right now my plan
is to manually go into the store and use guile to compile these fields,
and I'd really rather not muck with the store!

-- 
Katherine

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-03-28 17:55 Getting rid of "source file [...] newer than compiled" messages Katherine Cox-Buday
@ 2019-03-28 21:40 ` Ricardo Wurmus
  2019-03-29  1:45   ` Katherine Cox-Buday
  0 siblings, 1 reply; 23+ messages in thread
From: Ricardo Wurmus @ 2019-03-28 21:40 UTC (permalink / raw)
  To: Katherine Cox-Buday; +Cc: help-guix


Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:

> I have a Guix installation on a foreign distro, and with most any Guix
> command I receive this message for different packages (depending on what
> command is run). I looked at one package and found that there were no
> `.go` files for the `.scm` files which are listed.

How did you install Guix?

> Is there a supported way to get rid of these issues? Right now my plan
> is to manually go into the store and use guile to compile these fields,
> and I'd really rather not muck with the store!

You should never change files in the store.

The recommended way is to use “guix pull”, which compiles Guix.  If
you’re using Guix from a source checkout and with ’pre-inst-env’ you’ll
only need to compile the files with “make” to remove the reason for
these warnings to be issued.

--
Ricardo

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-03-28 21:40 ` Ricardo Wurmus
@ 2019-03-29  1:45   ` Katherine Cox-Buday
  2019-03-29  2:46     ` Ricardo Wurmus
  0 siblings, 1 reply; 23+ messages in thread
From: Katherine Cox-Buday @ 2019-03-29  1:45 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

Ricardo Wurmus <rekado@elephly.net> writes:

> Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:
>
>> I have a Guix installation on a foreign distro, and with most any Guix
>> command I receive this message for different packages (depending on what
>> command is run). I looked at one package and found that there were no
>> `.go` files for the `.scm` files which are listed.
>
> How did you install Guix?

It's been awhile now, but I'm pretty sure I followed the manual and used
the bash script.

>> Is there a supported way to get rid of these issues? Right now my plan
>> is to manually go into the store and use guile to compile these fields,
>> and I'd really rather not muck with the store!
>
> You should never change files in the store.
>
> The recommended way is to use “guix pull”, which compiles Guix.  If
> you’re using Guix from a source checkout and with ’pre-inst-env’ you’ll
> only need to compile the files with “make” to remove the reason for
> these warnings to be issued.

I'm not using Guix from a source checkout. I've issued `guix pull` (both
under the root account and as my user account) a few times with no
change.

`guix` is symlinked from `/usr/local/bin/guix` to
`/var/guix/profiles/per-user/root/current-guix/bin/guix` which points to
the latest profile (which is updated when running `guix pull` as root.
Even commands which do not submit jobs to the daemon give this error.

Do I need to `guix package -i guix` to get a good version?

--
Katherine

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-03-29  1:45   ` Katherine Cox-Buday
@ 2019-03-29  2:46     ` Ricardo Wurmus
  2019-03-29 15:21       ` Katherine Cox-Buday
  0 siblings, 1 reply; 23+ messages in thread
From: Ricardo Wurmus @ 2019-03-29  2:46 UTC (permalink / raw)
  To: Katherine Cox-Buday; +Cc: help-guix


Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:

> I'm not using Guix from a source checkout. I've issued `guix pull` (both
> under the root account and as my user account) a few times with no
> change.

Hmm, this should never leave you with an uncompiled Guix.  Can you tell
us more about the environment in which this happens?  (e.g. the output
of “env” will be fine.)

> `guix` is symlinked from `/usr/local/bin/guix` to
> `/var/guix/profiles/per-user/root/current-guix/bin/guix` which points to
> the latest profile (which is updated when running `guix pull` as root.

When using “guix pull” it will install into the current user’s
~/.config/guix/current/.  Are you only using Guix as the root user?

> Do I need to `guix package -i guix` to get a good version?

No.  You should never run “guix package -i guix” because it necessarily
installs an *older* version of Guix than the version you use to install
it.

--
Ricardo

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-03-29  2:46     ` Ricardo Wurmus
@ 2019-03-29 15:21       ` Katherine Cox-Buday
  2019-04-06 19:39         ` Katherine Cox-Buday
  0 siblings, 1 reply; 23+ messages in thread
From: Katherine Cox-Buday @ 2019-03-29 15:21 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

Ricardo Wurmus <rekado@elephly.net> writes:

> Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:
>
>> I'm not using Guix from a source checkout. I've issued `guix pull` (both
>> under the root account and as my user account) a few times with no
>> change.
>
> Hmm, this should never leave you with an uncompiled Guix.  Can you tell
> us more about the environment in which this happens?  (e.g. the output
> of “env” will be fine.)

Here is an example. When I run `guix help` I receive:

#+BEGIN_EXAMPLE
    ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm
    ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go
    ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/common.scm
    ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/common.go
    ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/package-config.scm
    ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/package-config.go
    ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/utils.scm
    ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/utils.go
#+END_EXAMPLE

`env` reports:

#+BEGIN_EXAMPLE
    GUIX_LOCPATH=/var/services/homes/me/.guix-profile/lib/locale
    TERM=xterm-256color
    SHELL=/bin/sh
    SSH_CLIENT=[redacted ip] 41856 22
    SSH_TTY=/dev/pts/9
    LC_ALL=en_US.utf8
    USER=me
    GUIX_PROFILE=/var/services/homes/me/.guix-profile
    PAGER=more
    MAIL=/var/mail/me
    PATH=/var/services/homes/me/.guix-profile/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin
    PWD=/var/services/homes/me
    LANG=en_US.utf8
    SHLVL=1
    HOME=/var/services/homes/me
    TERMINFO=/usr/share/terminfo
    LOGNAME=me
    SSH_CONNECTION=[redacted ip] 41856 [redacted ip] 22
    PGDATA=/var/services/pgsql
    XDG_RUNTIME_DIR=/var/services/homes/me/.local/run
    GIT_EXEC_PATH=/var/services/homes/me/.guix-profile/bin
    _=/bin/env
#+END_EXAMPLE

>> `guix` is symlinked from `/usr/local/bin/guix` to
>> `/var/guix/profiles/per-user/root/current-guix/bin/guix` which points to
>> the latest profile (which is updated when running `guix pull` as root.
>
> When using “guix pull” it will install into the current user’s
> ~/.config/guix/current/.  Are you only using Guix as the root user?

No, I always use my user account, but root contains the symlinks for the
daemon and CLI. The symlink for `/usr/local/bin/guix` is there from
installation per step (6) of the manual[1]. I tried running `guix pull`
as root because running it under my user account wasn't doing anything.

Thank you for troubleshooting this with me.

[1] - https://www.gnu.org/software/guix/manual/en/html_node/Binary-Installation.html#Binary-Installation

-- 
Katherine

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-03-29 15:21       ` Katherine Cox-Buday
@ 2019-04-06 19:39         ` Katherine Cox-Buday
  2019-04-06 20:39           ` Ricardo Wurmus
  0 siblings, 1 reply; 23+ messages in thread
From: Katherine Cox-Buday @ 2019-04-06 19:39 UTC (permalink / raw)
  To: help-guix

I was wondering if anyone had any ideas? This is not blocking me from
doing anything, but it does cause a lot of spam, and it slows operations
down a lot.

Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:

> Ricardo Wurmus <rekado@elephly.net> writes:
>
>> Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:
>>
>>> I'm not using Guix from a source checkout. I've issued `guix pull`
>>> (both
>>> under the root account and as my user account) a few times with no
>>> change.
>>
>> Hmm, this should never leave you with an uncompiled Guix.  Can you tell
>> us more about the environment in which this happens?  (e.g. the output
>> of “env” will be fine.)
>
> Here is an example. When I run `guix help` I receive:
>
> #+BEGIN_EXAMPLE
>     ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm
>     ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go
>     ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/common.scm
>     ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/common.go
>     ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/package-config.scm
>     ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/package-config.go
>     ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/utils.scm
>     ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/utils.go
> #+END_EXAMPLE
>
>
> `env` reports:
>
> #+BEGIN_EXAMPLE
>     GUIX_LOCPATH=/var/services/homes/me/.guix-profile/lib/locale
>     TERM=xterm-256color
>     SHELL=/bin/sh
>     SSH_CLIENT=[redacted ip] 41856 22
>     SSH_TTY=/dev/pts/9
>     LC_ALL=en_US.utf8
>     USER=me
>     GUIX_PROFILE=/var/services/homes/me/.guix-profile
>     PAGER=more
>     MAIL=/var/mail/me
>     PATH=/var/services/homes/me/.guix-profile/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin
>     PWD=/var/services/homes/me
>     LANG=en_US.utf8
>     SHLVL=1
>     HOME=/var/services/homes/me
>     TERMINFO=/usr/share/terminfo
>     LOGNAME=me
>     SSH_CONNECTION=[redacted ip] 41856 [redacted ip] 22
>     PGDATA=/var/services/pgsql
>     XDG_RUNTIME_DIR=/var/services/homes/me/.local/run
>     GIT_EXEC_PATH=/var/services/homes/me/.guix-profile/bin
>     _=/bin/env
> #+END_EXAMPLE
>
>>> `guix` is symlinked from `/usr/local/bin/guix` to
>>> `/var/guix/profiles/per-user/root/current-guix/bin/guix` which
>>> points to
>>> the latest profile (which is updated when running `guix pull` as root.
>>
>> When using “guix pull” it will install into the current user’s
>> ~/.config/guix/current/.  Are you only using Guix as the root user?
>
> No, I always use my user account, but root contains the symlinks for the
> daemon and CLI. The symlink for `/usr/local/bin/guix` is there from
> installation per step (6) of the manual[1]. I tried running `guix pull`
> as root because running it under my user account wasn't doing anything.
>
> Thank you for troubleshooting this with me.
>
> [1] -
> https://www.gnu.org/software/guix/manual/en/html_node/Binary-Installation.html#Binary-Installation

-- 
Katherine

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-06 19:39         ` Katherine Cox-Buday
@ 2019-04-06 20:39           ` Ricardo Wurmus
  2019-04-06 21:15             ` Katherine Cox-Buday
  0 siblings, 1 reply; 23+ messages in thread
From: Ricardo Wurmus @ 2019-04-06 20:39 UTC (permalink / raw)
  To: Katherine Cox-Buday; +Cc: help-guix


Hi Katherine,

> I was wondering if anyone had any ideas? This is not blocking me from
> doing anything, but it does cause a lot of spam, and it slows operations
> down a lot.

This is really odd and I cannot reproduce this.  I wonder if this might
be related to some unusual file system choices or settings that cause
Guile to think that the source files are more recent.

You showed us this example output:

>     ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm
>     ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go
>     ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/common.scm
>     ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/common.go
>     ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/package-config.scm
>     ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/package-config.go
>     ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/utils.scm
>     ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/utils.go

Can you show us the mtime of these files?  In my case both the scm and
the go files all have their mtime as 1970-01-01 01:00:01.000000000
+0100.

--
Ricardo

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-06 20:39           ` Ricardo Wurmus
@ 2019-04-06 21:15             ` Katherine Cox-Buday
  2019-04-06 21:24               ` Gábor Boskovits
  2019-04-07  3:11               ` Ricardo Wurmus
  0 siblings, 2 replies; 23+ messages in thread
From: Katherine Cox-Buday @ 2019-04-06 21:15 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

Ricardo Wurmus <rekado@elephly.net> writes:

> This is really odd and I cannot reproduce this.  I wonder if this might
> be related to some unusual file system choices or settings that cause
> Guile to think that the source files are more recent.

I have accepted that I have somehow gotten myself into a dark corner of
Guix! I was expecting there to be a Guix command that would basically
get any package back into a good state. I was kind of surprised that
`guix build --check` or `guix build --repair` didn't help me out. My
expectation was that maybe this would check the hash of the store with
upstream and rebuild or redownload a substitute.

> Can you show us the mtime of these files?  In my case both the scm and
> the go files all have their mtime as 1970-01-01 01:00:01.000000000
> +0100.

One interesting point might be that there are no `.go` files. I would
argue Guile's error message here could use some care, but even a better
error message won't get me to a better spot :)

Thanks again for the time, Ricardo.

-- 
Katherine

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-06 21:15             ` Katherine Cox-Buday
@ 2019-04-06 21:24               ` Gábor Boskovits
  2019-04-07  3:11               ` Ricardo Wurmus
  1 sibling, 0 replies; 23+ messages in thread
From: Gábor Boskovits @ 2019-04-06 21:24 UTC (permalink / raw)
  To: Katherine Cox-Buday; +Cc: help-guix

Hello Katherine,

Katherine Cox-Buday <cox.katherine.e@gmail.com> ezt írta (időpont:
2019. ápr. 6., Szo, 23:16):
>
> Ricardo Wurmus <rekado@elephly.net> writes:
>
> > This is really odd and I cannot reproduce this.  I wonder if this might
> > be related to some unusual file system choices or settings that cause
> > Guile to think that the source files are more recent.
>
> I have accepted that I have somehow gotten myself into a dark corner of
> Guix! I was expecting there to be a Guix command that would basically
> get any package back into a good state. I was kind of surprised that
> `guix build --check` or `guix build --repair` didn't help me out. My
> expectation was that maybe this would check the hash of the store with
> upstream and rebuild or redownload a substitute.
>

I believe you might be looking looking for guix gc --verify, and
suboptions thereof.
https://www.gnu.org/software/guix/manual/en/html_node/Invoking-guix-gc.html

Does that help?

> > Can you show us the mtime of these files?  In my case both the scm and
> > the go files all have their mtime as 1970-01-01 01:00:01.000000000
> > +0100.
>
> One interesting point might be that there are no `.go` files. I would
> argue Guile's error message here could use some care, but even a better
> error message won't get me to a better spot :)
>
> Thanks again for the time, Ricardo.
>
> --
> Katherine
>

Best regards,
g_bor

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-06 21:15             ` Katherine Cox-Buday
  2019-04-06 21:24               ` Gábor Boskovits
@ 2019-04-07  3:11               ` Ricardo Wurmus
  2019-04-07 17:31                 ` Katherine Cox-Buday
  1 sibling, 1 reply; 23+ messages in thread
From: Ricardo Wurmus @ 2019-04-07  3:11 UTC (permalink / raw)
  To: Katherine Cox-Buday; +Cc: help-guix


Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:

>> Can you show us the mtime of these files?  In my case both the scm and
>> the go files all have their mtime as 1970-01-01 01:00:01.000000000
>> +0100.
>
> One interesting point might be that there are no `.go` files. I would
> argue Guile's error message here could use some care, but even a better
> error message won't get me to a better spot :)

Oh, well, that’s definitely not right.  Guix does not download
individual files when fetching packages — it downloads archives that
definitely do contain the .go files.  So the question is… where did they
go once “guix pull” finished?

Does “guix gc --verify=repair,contents” (run as root) really not tell
you anything useful?

--
Ricardo

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-07  3:11               ` Ricardo Wurmus
@ 2019-04-07 17:31                 ` Katherine Cox-Buday
  2019-04-08  6:43                   ` Ricardo Wurmus
  0 siblings, 1 reply; 23+ messages in thread
From: Katherine Cox-Buday @ 2019-04-07 17:31 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

Ricardo Wurmus <rekado@elephly.net> writes:

> Oh, well, that’s definitely not right.  Guix does not download
> individual files when fetching packages — it downloads archives that
> definitely do contain the .go files.  So the question is… where did they
> go once “guix pull” finished?

Yeah, I don't know! Mostly I'm trying to dig into this edge-case of
trying to get malformed packages back into a known state. I imagine that
will come up from time to time on users' machines, for various reasons.

> Does “guix gc --verify=repair,contents” (run as root) really not tell
> you anything useful?

Here is the output, verbatim:

#+BEGIN_EXAMPLE
  sudo guix gc --verify=repair,contents
  Password: 
  guile: warning: failed to install locale
  ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm
  ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go
  ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/common.scm
  ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/common.go
  ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/package-config.scm
  ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/package-config.go
  ;;; note: source file /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/utils.scm
  ;;;       newer than compiled /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/utils.go
  reading the store...
  checking path existence...
  checking hashes...

  Some deprecated features have been used.  Set the environment
  variable GUILE_WARN_DEPRECATED to "detailed" and rerun the
  program to get more information.  Set it to "no" to suppress
  this message.
#+END_EXAMPLE

So, unfortunately not :( And these messages continue. As a user, I would
have definitely expected this command to have found an issue.

-- 
Katherine

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-07 17:31                 ` Katherine Cox-Buday
@ 2019-04-08  6:43                   ` Ricardo Wurmus
  2019-04-10 14:31                     ` Katherine Cox-Buday
  0 siblings, 1 reply; 23+ messages in thread
From: Ricardo Wurmus @ 2019-04-08  6:43 UTC (permalink / raw)
  To: Katherine Cox-Buday; +Cc: help-guix


Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:

> Ricardo Wurmus <rekado@elephly.net> writes:
>
>> Oh, well, that’s definitely not right.  Guix does not download
>> individual files when fetching packages — it downloads archives that
>> definitely do contain the .go files.  So the question is… where did they
>> go once “guix pull” finished?
>
> Yeah, I don't know! Mostly I'm trying to dig into this edge-case of
> trying to get malformed packages back into a known state. I imagine that
> will come up from time to time on users' machines, for various reasons.
>
>> Does “guix gc --verify=repair,contents” (run as root) really not tell
>> you anything useful?
[no repair output]

Hmm.

You said that there are no .go files, yet Guile keeps saying that the
source file
/gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm
is newer than the compiled
/gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go

Does the second file really not exist while the first one does?

--
Ricardo

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-08  6:43                   ` Ricardo Wurmus
@ 2019-04-10 14:31                     ` Katherine Cox-Buday
  2019-04-10 16:04                       ` Andreas Enge
  0 siblings, 1 reply; 23+ messages in thread
From: Katherine Cox-Buday @ 2019-04-10 14:31 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

Ricardo Wurmus <rekado@elephly.net> writes:

> You said that there are no .go files, yet Guile keeps saying that the
> source file
> /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm
> is newer than the compiled
> /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go
>
> Does the second file really not exist while the first one does?

Correct:

#+BEGIN_EXAMPLE
  ls -a /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt
  .  ..  base16.scm  base64.scm  common.scm  hash.scm  hmac.scm package-config.scm  pk-crypto.scm  random.scm  utils.scm
#+END_EXAMPLE

-- 
Katherine

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-10 14:31                     ` Katherine Cox-Buday
@ 2019-04-10 16:04                       ` Andreas Enge
  2019-04-10 16:24                         ` Katherine Cox-Buday
  0 siblings, 1 reply; 23+ messages in thread
From: Andreas Enge @ 2019-04-10 16:04 UTC (permalink / raw)
  To: Katherine Cox-Buday; +Cc: help-guix

Hello,

On Wed, Apr 10, 2019 at 09:31:03AM -0500, Katherine Cox-Buday wrote:
> Ricardo Wurmus <rekado@elephly.net> writes:
> 
> > You said that there are no .go files, yet Guile keeps saying that the
> > source file
> > /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm
> > is newer than the compiled
> > /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go
> >
> > Does the second file really not exist while the first one does?
> 
> Correct:
> 
> #+BEGIN_EXAMPLE
>   ls -a /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt
>   .  ..  base16.scm  base64.scm  common.scm  hash.scm  hmac.scm package-config.scm  pk-crypto.scm  random.scm  utils.scm
> #+END_EXAMPLE

notice that the .go file is in a different subdirectory of the package
directory.

Andreas

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-10 16:04                       ` Andreas Enge
@ 2019-04-10 16:24                         ` Katherine Cox-Buday
  2019-04-10 16:49                           ` Ricardo Wurmus
  0 siblings, 1 reply; 23+ messages in thread
From: Katherine Cox-Buday @ 2019-04-10 16:24 UTC (permalink / raw)
  To: Andreas Enge; +Cc: help-guix

Andreas Enge <andreas@enge.fr> writes:

> Hello,
>
> On Wed, Apr 10, 2019 at 09:31:03AM -0500, Katherine Cox-Buday wrote:
>> Ricardo Wurmus <rekado@elephly.net> writes:
>> 
>> > You said that there are no .go files, yet Guile keeps saying that the
>> > source file
>> > /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm
>> > is newer than the compiled
>> > /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go
>> >
>> > Does the second file really not exist while the first one does?
>> 
>> Correct:
>> 
>> #+BEGIN_EXAMPLE
>>   ls -a
>> /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt
>>   . .. base16.scm base64.scm common.scm hash.scm hmac.scm
>> package-config.scm pk-crypto.scm random.scm utils.scm
>> #+END_EXAMPLE
>
> notice that the .go file is in a different subdirectory of the package
> directory.

Gosh, I am embarassed. The compiled files are indeed in the path Guile
was helpfully trying to point me at:

#+BEGIN_EXAMPLE
  $ ls -a /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/
  .  ..  base16.go  base64.go  common.go  hash.go  hmac.go  package-config.go  pk-crypto.go  random.go  utils.go
#+END_EXAMPLE

So I went back and took Ricardo's advice and looked at the time's involved:

#+BEGIN_EXAMPLE
  $ stat /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm 
    File: ‘/gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm’
    Size: 5366      	Blocks: 16         IO Block: 4096   regular file
  Device: fc02h/64514d	Inode: 137942      Links: 1
  Access: (0444/-r--r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
  Access: 2019-04-10 09:29:22.008888969 -0500
  Modify: 2018-12-25 17:02:43.755150339 -0600
  Change: 2018-12-25 17:02:43.755150339 -0600
   Birth: -
#+END_EXAMPLE

#+BEGIN_EXAMPLE
  $ stat /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go 
    File: ‘/gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go’
    Size: 77485     	Blocks: 152        IO Block: 4096   regular file
  Device: fc02h/64514d	Inode: 137925      Links: 1
  Access: (0444/-r--r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
  Access: 2019-04-06 16:56:32.259721626 -0500
  Modify: 2018-12-25 17:02:43.753150336 -0600
  Change: 2018-12-25 17:02:43.753150336 -0600
   Birth: -
#+END_EXAMPLE

It looks like the scheme file is fractions of a second newer than the
compiled file. So, pulling on this thread:

1. This looks like this has been an issue since I installed Guix. Did I
   do something wrong?
2. I feel like, regardless of the root-cause, some Guix command should
   be able to correct this issue for me, without necessarily having to
   know what went wrong or why.

Thank you all! And thoughts?

-- 
Katherine

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-10 16:24                         ` Katherine Cox-Buday
@ 2019-04-10 16:49                           ` Ricardo Wurmus
  2019-04-10 18:04                             ` Katherine Cox-Buday
  2019-04-17 21:01                             ` Ludovic Courtès
  0 siblings, 2 replies; 23+ messages in thread
From: Ricardo Wurmus @ 2019-04-10 16:49 UTC (permalink / raw)
  To: Katherine Cox-Buday; +Cc: help-guix


Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:

> Gosh, I am embarassed. The compiled files are indeed in the path Guile
> was helpfully trying to point me at:
>
> #+BEGIN_EXAMPLE
>   $ ls -a /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/
>   .  ..  base16.go  base64.go  common.go  hash.go  hmac.go  package-config.go  pk-crypto.go  random.go  utils.go
> #+END_EXAMPLE
>
> So I went back and took Ricardo's advice and looked at the time's involved:
>
> #+BEGIN_EXAMPLE
>   $ stat /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm
>     File: ‘/gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm’
>     Size: 5366      	Blocks: 16         IO Block: 4096   regular file
>   Device: fc02h/64514d	Inode: 137942      Links: 1
>   Access: (0444/-r--r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
>   Access: 2019-04-10 09:29:22.008888969 -0500
>   Modify: 2018-12-25 17:02:43.755150339 -0600
>   Change: 2018-12-25 17:02:43.755150339 -0600
>    Birth: -
> #+END_EXAMPLE
>
> #+BEGIN_EXAMPLE
>   $ stat /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go
>     File: ‘/gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go’
>     Size: 77485     	Blocks: 152        IO Block: 4096   regular file
>   Device: fc02h/64514d	Inode: 137925      Links: 1
>   Access: (0444/-r--r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
>   Access: 2019-04-06 16:56:32.259721626 -0500
>   Modify: 2018-12-25 17:02:43.753150336 -0600
>   Change: 2018-12-25 17:02:43.753150336 -0600
>    Birth: -
> #+END_EXAMPLE
>
> It looks like the scheme file is fractions of a second newer than the
> compiled file. So, pulling on this thread:

These time stamps are wrong.  Everything in /gnu/store should have 0 for
the mtime.

> 2. I feel like, regardless of the root-cause, some Guix command should
>    be able to correct this issue for me, without necessarily having to
>    know what went wrong or why.

This shouldn’t ever happen, because all store items should have their
mtime reset.

You previously mentioned that you modified your store (which “voids your
warranty” as it were); by default the store is bind-mounted to ensure
that it is read-only.  Can you tell us more about the file system and
the way the store is mounted?

--
Ricardo

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-10 16:49                           ` Ricardo Wurmus
@ 2019-04-10 18:04                             ` Katherine Cox-Buday
  2019-04-10 18:22                               ` Ricardo Wurmus
  2019-04-17 21:01                             ` Ludovic Courtès
  1 sibling, 1 reply; 23+ messages in thread
From: Katherine Cox-Buday @ 2019-04-10 18:04 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

Ricardo Wurmus <rekado@elephly.net> writes:

> Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:
>
>> Gosh, I am embarassed. The compiled files are indeed in the path Guile
>> was helpfully trying to point me at:
>>
>> #+BEGIN_EXAMPLE
>>   $ ls -a /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/
>>   .  ..  base16.go  base64.go  common.go  hash.go  hmac.go  package-config.go  pk-crypto.go  random.go  utils.go
>> #+END_EXAMPLE
>>
>> So I went back and took Ricardo's advice and looked at the time's involved:
>>
>> #+BEGIN_EXAMPLE
>>   $ stat /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm
>>     File: ‘/gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm’
>>     Size: 5366      	Blocks: 16         IO Block: 4096   regular file
>>   Device: fc02h/64514d	Inode: 137942      Links: 1
>>   Access: (0444/-r--r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
>>   Access: 2019-04-10 09:29:22.008888969 -0500
>>   Modify: 2018-12-25 17:02:43.755150339 -0600
>>   Change: 2018-12-25 17:02:43.755150339 -0600
>>    Birth: -
>> #+END_EXAMPLE
>>
>> #+BEGIN_EXAMPLE
>>   $ stat /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go
>>     File: ‘/gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go’
>>     Size: 77485     	Blocks: 152        IO Block: 4096   regular file
>>   Device: fc02h/64514d	Inode: 137925      Links: 1
>>   Access: (0444/-r--r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
>>   Access: 2019-04-06 16:56:32.259721626 -0500
>>   Modify: 2018-12-25 17:02:43.753150336 -0600
>>   Change: 2018-12-25 17:02:43.753150336 -0600
>>    Birth: -
>> #+END_EXAMPLE
>>
>> It looks like the scheme file is fractions of a second newer than the
>> compiled file. So, pulling on this thread:
>
> These time stamps are wrong.  Everything in /gnu/store should have 0 for
> the mtime.

Perhaps I missed a flag when unpacking the store initially?

>
>> 2. I feel like, regardless of the root-cause, some Guix command should
>>    be able to correct this issue for me, without necessarily having to
>>    know what went wrong or why.
>
> This shouldn’t ever happen, because all store items should have their
> mtime reset.
>
> You previously mentioned that you modified your store (which “voids your
> warranty” as it were); by default the store is bind-mounted to ensure
> that it is read-only.  Can you tell us more about the file system and
> the way the store is mounted?

I previously mentioned I was considering modifying the store as a fix to
this issue. To my recollection, I don't think I've manually touched the
store yet.

I still hold the opinion that the guix toolchain should be able to heal
store items, regardless of how they got that way, or whether it should
be theoretically possible. Do you disagree?

-- 
Katherine

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-10 18:04                             ` Katherine Cox-Buday
@ 2019-04-10 18:22                               ` Ricardo Wurmus
  2019-04-10 20:20                                 ` Katherine Cox-Buday
  0 siblings, 1 reply; 23+ messages in thread
From: Ricardo Wurmus @ 2019-04-10 18:22 UTC (permalink / raw)
  To: Katherine Cox-Buday; +Cc: help-guix


Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:

> Ricardo Wurmus <rekado@elephly.net> writes:
>
>> Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:
>>
>>> Gosh, I am embarassed. The compiled files are indeed in the path Guile
>>> was helpfully trying to point me at:
>>>
>>> #+BEGIN_EXAMPLE
>>>   $ ls -a /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/
>>>   .  ..  base16.go  base64.go  common.go  hash.go  hmac.go  package-config.go  pk-crypto.go  random.go  utils.go
>>> #+END_EXAMPLE
>>>
>>> So I went back and took Ricardo's advice and looked at the time's involved:
>>>
>>> #+BEGIN_EXAMPLE
>>>   $ stat /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm
>>>     File: ‘/gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/share/guile/site/2.2/gcrypt/hash.scm’
>>>     Size: 5366      	Blocks: 16         IO Block: 4096   regular file
>>>   Device: fc02h/64514d	Inode: 137942      Links: 1
>>>   Access: (0444/-r--r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
>>>   Access: 2019-04-10 09:29:22.008888969 -0500
>>>   Modify: 2018-12-25 17:02:43.755150339 -0600
>>>   Change: 2018-12-25 17:02:43.755150339 -0600
>>>    Birth: -
>>> #+END_EXAMPLE
>>>
>>> #+BEGIN_EXAMPLE
>>>   $ stat /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go
>>>     File: ‘/gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go’
>>>     Size: 77485     	Blocks: 152        IO Block: 4096   regular file
>>>   Device: fc02h/64514d	Inode: 137925      Links: 1
>>>   Access: (0444/-r--r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
>>>   Access: 2019-04-06 16:56:32.259721626 -0500
>>>   Modify: 2018-12-25 17:02:43.753150336 -0600
>>>   Change: 2018-12-25 17:02:43.753150336 -0600
>>>    Birth: -
>>> #+END_EXAMPLE
>>>
>>> It looks like the scheme file is fractions of a second newer than the
>>> compiled file. So, pulling on this thread:
>>
>> These time stamps are wrong.  Everything in /gnu/store should have 0 for
>> the mtime.
>
> Perhaps I missed a flag when unpacking the store initially?

Maybe.  But subsequent calls to “guix pull” should give you new store
items anyway, and those should be fine.

Is there anything special about your setup perhaps?  E.g. running the
daemon as some other user than root, using btrfs, etc.

>>> 2. I feel like, regardless of the root-cause, some Guix command should
>>>    be able to correct this issue for me, without necessarily having to
>>>    know what went wrong or why.
>>
>> This shouldn’t ever happen, because all store items should have their
>> mtime reset.
>>
>> You previously mentioned that you modified your store (which “voids your
>> warranty” as it were); by default the store is bind-mounted to ensure
>> that it is read-only.  Can you tell us more about the file system and
>> the way the store is mounted?
>
> I previously mentioned I was considering modifying the store as a fix to
> this issue. To my recollection, I don't think I've manually touched the
> store yet.

Okay.

> I still hold the opinion that the guix toolchain should be able to heal
> store items, regardless of how they got that way, or whether it should
> be theoretically possible. Do you disagree?

No, I agree with you.  That’s one of the reasons why “guix gc
--verify=repair,contents” exists.

--
Ricardo

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-10 18:22                               ` Ricardo Wurmus
@ 2019-04-10 20:20                                 ` Katherine Cox-Buday
  2019-04-11 12:47                                   ` Giovanni Biscuolo
  0 siblings, 1 reply; 23+ messages in thread
From: Katherine Cox-Buday @ 2019-04-10 20:20 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

Ricardo Wurmus <rekado@elephly.net> writes:

> Maybe.  But subsequent calls to “guix pull” should give you new store
> items anyway, and those should be fine.

That's odd. I have definitely run `guix pull` several times on this machine.

> Is there anything special about your setup perhaps?  E.g. running the
> daemon as some other user than root, using btrfs, etc.

The store is mounted on a RAID-6 array with an ext4 filesystem. Maybe
the striping is confusing things? Here's the mount point:

#+BEGIN_EXAMPLE
  $ mount |grep gnu
  /dev/mapper/vg1-volume_2 on /gnu type ext4 (rw,relatime,synoacl,stripe=32,data=writeback,jqfmt=vfsv0,usrjquota=aquota.user,grpjquota=aquota.group)
#+END_EXAMPLE

>> I still hold the opinion that the guix toolchain should be able to heal
>> store items, regardless of how they got that way, or whether it should
>> be theoretically possible. Do you disagree?
>
> No, I agree with you.  That’s one of the reasons why “guix gc
> --verify=repair,contents” exists.

Hm, does this also look at timestamps? Why didn't this give me any
output or fix the issue?

-- 
Katherine

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-10 20:20                                 ` Katherine Cox-Buday
@ 2019-04-11 12:47                                   ` Giovanni Biscuolo
  2019-04-11 14:34                                     ` Katherine Cox-Buday
  0 siblings, 1 reply; 23+ messages in thread
From: Giovanni Biscuolo @ 2019-04-11 12:47 UTC (permalink / raw)
  To: Katherine Cox-Buday, Ricardo Wurmus; +Cc: help-guix

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

Hello,

Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:

> Ricardo Wurmus <rekado@elephly.net> writes:

[...]

>> Is there anything special about your setup perhaps?  E.g. running the
>> daemon as some other user than root, using btrfs, etc.
>
> The store is mounted on a RAID-6 array with an ext4 filesystem. Maybe
> the striping is confusing things? Here's the mount point:
>
> #+BEGIN_EXAMPLE
>   $ mount |grep gnu
>   /dev/mapper/vg1-volume_2 on /gnu type ext4 (rw,relatime,synoacl,stripe=32,data=writeback,jqfmt=vfsv0,usrjquota=aquota.user,grpjquota=aquota.group)
> #+END_EXAMPLE

synoacl? I cannot find that mount option: are you on a Synology NAS?

AFAIK stripe=32 should not have any impact on mtime, nor data=writeback

I'm using Guix on Debian and my store is in a LV too:

--8<---------------cut here---------------start------------->8---
/dev/mapper/vg01-gnu on /gnu type ext4 (rw,relatime)
--8<---------------cut here---------------end--------------->8---

I vaguely recall once I had one problem with source scm files newer than
compiled when using ./pre-inst-env (for sure I did something wrong
hacking, not directly touching /gnu/store anyway) but "guix gc
--verify=repair" fixed that for me

Ricardo also asked you about the daemon: how is it started on your
machine?

mine is starded by the systemd service (installed via binary
installation), and is running as root:

--8<---------------cut here---------------start------------->8---
host:~$ ps aux | grep guix-daemon
root      2444  0.0  0.0  12216  1808 ?        Ss   Mar22   0:00 /var/guix/profiles/per-user/root/current-guix/bin/guix-daemon --build-users-group=guixbuild
--8<---------------cut here---------------end--------------->8---

[...]

HTH! Gio'

-- 
Giovanni Biscuolo

Xelera IT Infrastructures

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-11 12:47                                   ` Giovanni Biscuolo
@ 2019-04-11 14:34                                     ` Katherine Cox-Buday
  2019-04-11 17:16                                       ` Giovanni Biscuolo
  0 siblings, 1 reply; 23+ messages in thread
From: Katherine Cox-Buday @ 2019-04-11 14:34 UTC (permalink / raw)
  To: Giovanni Biscuolo; +Cc: help-guix

Giovanni Biscuolo <g@xelera.eu> writes:

> synoacl? I cannot find that mount option: are you on a Synology NAS?

Yes.

> AFAIK stripe=32 should not have any impact on mtime, nor data=writeback
>
> I'm using Guix on Debian and my store is in a LV too:
>
> /dev/mapper/vg01-gnu on /gnu type ext4 (rw,relatime)

Hm, OK. That was my best guess.

> I vaguely recall once I had one problem with source scm files newer than
> compiled when using ./pre-inst-env (for sure I did something wrong
> hacking, not directly touching /gnu/store anyway) but "guix gc
> --verify=repair" fixed that for me

This was my expectation too! I am perplexed as to why it doesn't.

> Ricardo also asked you about the daemon: how is it started on your
> machine?

Synology's distro remains on upstart which is what I'm using to start
the daemon:

#+BEGIN_EXAMPLE
  $ ps -fC guix-daemon
  UID        PID  PPID  C STIME TTY          TIME CMD
  root     27071     1  0 Apr06 ?        00:00:00 guix-daemon --build-users-group=guixbuild
#+END_EXAMPLE

> HTH! Gio'

Thank you!

-- 
Katherine

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-11 14:34                                     ` Katherine Cox-Buday
@ 2019-04-11 17:16                                       ` Giovanni Biscuolo
  0 siblings, 0 replies; 23+ messages in thread
From: Giovanni Biscuolo @ 2019-04-11 17:16 UTC (permalink / raw)
  To: Katherine Cox-Buday; +Cc: help-guix

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

Katherine Cox-Buday <cox.katherine.e@gmail.com> writes:

> Giovanni Biscuolo <g@xelera.eu> writes:
>
>> synoacl? I cannot find that mount option: are you on a Synology NAS?
>
> Yes.
>
>> AFAIK stripe=32 should not have any impact on mtime, nor data=writeback
>>
>> I'm using Guix on Debian and my store is in a LV too:
>>
>> /dev/mapper/vg01-gnu on /gnu type ext4 (rw,relatime)
>
> Hm, OK. That was my best guess.

about your mount options: it's likely you don't need all them exept
(rw,realtime), try to remove them and remount /gnu... it may be synoacl
"confusing" things here

[...]

-- 
Giovanni Biscuolo

Xelera IT Infrastructures

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

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

* Re: Getting rid of "source file [...] newer than compiled" messages
  2019-04-10 16:49                           ` Ricardo Wurmus
  2019-04-10 18:04                             ` Katherine Cox-Buday
@ 2019-04-17 21:01                             ` Ludovic Courtès
  1 sibling, 0 replies; 23+ messages in thread
From: Ludovic Courtès @ 2019-04-17 21:01 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

Ricardo Wurmus <rekado@elephly.net> skribis:

>>   $ stat /gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go
>>     File: ‘/gnu/store/cd6rjv3qhhghr59wpq4fksfr84d5dsdf-guix-module-union/lib/guile/2.2/site-ccache/gcrypt/hash.go’
>>     Size: 77485     	Blocks: 152        IO Block: 4096   regular file
>>   Device: fc02h/64514d	Inode: 137925      Links: 1
>>   Access: (0444/-r--r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
>>   Access: 2019-04-06 16:56:32.259721626 -0500
>>   Modify: 2018-12-25 17:02:43.753150336 -0600
>>   Change: 2018-12-25 17:02:43.753150336 -0600
>>    Birth: -
>> #+END_EXAMPLE
>>
>> It looks like the scheme file is fractions of a second newer than the
>> compiled file. So, pulling on this thread:
>
> These time stamps are wrong.  Everything in /gnu/store should have 0 for
> the mtime.

More precisely the mtime should be 1 (one second after the Epoch).

Also, when using the ‘stat’ command, it’s a good idea to set TZ=UTC to
avoid confusion when looking at the timestamps.

Thanks,
Ludo’.

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

end of thread, other threads:[~2019-04-17 21:01 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-03-28 17:55 Getting rid of "source file [...] newer than compiled" messages Katherine Cox-Buday
2019-03-28 21:40 ` Ricardo Wurmus
2019-03-29  1:45   ` Katherine Cox-Buday
2019-03-29  2:46     ` Ricardo Wurmus
2019-03-29 15:21       ` Katherine Cox-Buday
2019-04-06 19:39         ` Katherine Cox-Buday
2019-04-06 20:39           ` Ricardo Wurmus
2019-04-06 21:15             ` Katherine Cox-Buday
2019-04-06 21:24               ` Gábor Boskovits
2019-04-07  3:11               ` Ricardo Wurmus
2019-04-07 17:31                 ` Katherine Cox-Buday
2019-04-08  6:43                   ` Ricardo Wurmus
2019-04-10 14:31                     ` Katherine Cox-Buday
2019-04-10 16:04                       ` Andreas Enge
2019-04-10 16:24                         ` Katherine Cox-Buday
2019-04-10 16:49                           ` Ricardo Wurmus
2019-04-10 18:04                             ` Katherine Cox-Buday
2019-04-10 18:22                               ` Ricardo Wurmus
2019-04-10 20:20                                 ` Katherine Cox-Buday
2019-04-11 12:47                                   ` Giovanni Biscuolo
2019-04-11 14:34                                     ` Katherine Cox-Buday
2019-04-11 17:16                                       ` Giovanni Biscuolo
2019-04-17 21:01                             ` Ludovic Courtès

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).