unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: "Björn Höfling" <bjoern.hoefling@bjoernhoefling.de>
To: cdelia@dc.uba.ar
Cc: help-guix@gnu.org
Subject: Re: rolling back only a single package
Date: Fri, 28 Dec 2018 14:34:10 +0100	[thread overview]
Message-ID: <20181228143410.283e8d8a@alma-ubu> (raw)
In-Reply-To: <09ccab6e031dddc448863c812f400e0a@dc.uba.ar>

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

Hi cdelia,

On Thu, 27 Dec 2018 16:52:23 -0300
cdelia@dc.uba.ar wrote:

> Hi,
> 
> I upgraded guix a couple of days ago, installed some things and now I 
> found that xmobar just keeps segfaulting.
> 
> Switching to specific generation it's really cool, but in this case 
> would "uninstall" all the software that it's between the 
> update-generation and the current one.
> 
> So, there is any way to just downgrade a single package (resolving it 
> dependencies) with out doing a full switch?
> 
> I guess this it's connected to 
> https://lists.gnu.org/archive/html/help-guix/2016-08/msg00028.html
> 
> And I could also switch and then manually re install. But maybe there
> is a standard or automatic way to do it.


There is a nice blog post by Ludivic that describes some aspects of it:

https://www.gnu.org/software/guix/blog/2018/multi-dimensional-transactions-and-rollbacks-oh-my/

It looks like the inferior thing he mentioned is already ready, but I
haven't yet followed that.

Ludo, can you say something about that?

Doing it the way described in the post I can downgrade (in my case I use
youtube-dl as the package I want to downgrade, as this is in my
profile):

The trick is to work with the generations of "guix pull".

$ guix package --list-generations
Generation 122  Dec 15 2018 16:36:58
 + youtube-dl   2018.11.07      out     /gnu/store/20wr2z2qnm36mwcdmmzpsvr9f4899
 - youtube-dl   2018.09.18      out     /gnu/store/h7xdi93gag6r9agp5ivppignh4q0k

$ guix pull --list-generations
Generation 28   Nov 07 2018 20:38:34
  guix 91b71cf
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 91b71cfbba03ea484cc6028b3384bf4609cbcf14
[..]
Generation 29   Nov 13 2018 18:38:56
  guix d540137
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: d5401375099f6e4562b849121265bb1c3e85874f
  65 packages upgraded: certbot@0.28.0, crossguid@0.0-2.fef89a4,
[..]
    wxmaxima@18.10.1, youtube-dl@2018.11.07

You see here, I did update my "guix-pull" generation on 13 November
that introduced the new youtube-dl version but did update my "guix
package" profile only on 15 December.

Now I need to use the guix from from generation 28, if I want do
downgrade my youtube-dl:


$ /var/guix/profiles/per-user/bjoern/current-guix-28-link/bin/guix
--version
guix (GNU Guix) 91b71cfbba03ea484cc6028b3384bf4609cbcf14

OK, this is really the right version, compared to the above generations
of "guix pull".

Then let's downgrade:

$ /var/guix/profiles/per-user/bjoern/current-guix-28-link/bin/guix
package -i youtube-dl
The following package will be downgraded:
   youtube-dl   2018.11.07 -> 2018.11.03        /gnu/store/vw375z5hm4vha0pvfxmadh6qcglacq9g-youtube-dl-2018.11.03

Check it out:
$ guix package --list-generations
Generation 125  Dec 28 2018 14:02:08    (current)
 + youtube-dl   2018.11.03      out     /gnu/store/vw375z5hm4vha0pvfxmadh6qcglac
 - youtube-dl   2018.11.07      out     /gnu/store/20wr2z2qnm36mwcdmmzpsvr9f4899

~$ youtube-dl --version
2018.11.03

OK, I'm rolling back, as I don't want to downgrade:

$ guix package --roll-back
switched from generation 125 to 124

$ youtube-dl --version
2018.11.07

Is that what you are looking for?

Björn

PS: Can you help fixing the problem with xmobar?

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

  parent reply	other threads:[~2018-12-28 13:46 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-27 19:52 rolling back only a single package cdelia
2018-12-28  7:55 ` Pierre Neidhardt
     [not found]   ` <7bbd5b5a38121bf9a70c1fbe095c39b8@dc.uba.ar>
2018-12-28 22:19     ` cdelia
2018-12-28 11:35 ` Tonton
2018-12-30 22:57   ` cdelia
2018-12-31 15:17     ` Tonton
2018-12-28 13:34 ` Björn Höfling [this message]
2018-12-28 14:49   ` Ricardo Wurmus
2018-12-31  7:11     ` cdelia
2018-12-31  8:23       ` Ricardo Wurmus
2018-12-30 23:37   ` cdelia
2018-12-31  0:59   ` cdelia
     [not found] ` <45406B3B-5E5F-4444-9679-A5DB43D9AE50@pretty.Easy.privacy>
2018-12-28 22:15   ` cdelia
2018-12-29 18:35     ` swedebugia
2018-12-30 22:40       ` Catriel Omar D'Elía

Reply instructions:

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

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

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

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

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

  git send-email \
    --in-reply-to=20181228143410.283e8d8a@alma-ubu \
    --to=bjoern.hoefling@bjoernhoefling.de \
    --cc=cdelia@dc.uba.ar \
    --cc=help-guix@gnu.org \
    /path/to/YOUR_REPLY

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

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