Deja dup fail to build on nixos

Bug #1720676 reported by pasqui on 2017-10-01
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Déjà Dup
Undecided
Unassigned

Bug Description

Building deja-dup on nixos-unstable fails with the following error

../deja-dup/widgets/ConfigList.vala:336.39-336.46: error: Argument 1: Cannot pass ref argument to non-reference parameter
      (model as Gtk.ListStore).remove(ref iter);
                                      ^^^^^^^^
../deja-dup/widgets/ConfigLocation.vala:183.29-183.36: error: Argument 1: Cannot pass ref argument to non-reference parameter
        loop = store.remove(ref iter);
                            ^^^^^^^^
../deja-dup/widgets/ConfigLocation.vala:477.18-477.25: error: Argument 1: Cannot pass ref argument to non-reference parameter
    store.remove(ref iter);
                 ^^^^^^^^
../deja-dup/widgets/ConfigLocation.vala:482.22-482.33: error: Argument 1: Cannot pass ref argument to non-reference parameter
        store.remove(ref sep_iter);
                     ^^^^^^^^^^^^
Compilation failed: 4 error(s), 0 warning(s)

The following is the nix expression used to try building deja-dup:

{ stdenv, fetchurl, meson, pkgconfig, vala, gettext
, gnome3, libnotify, intltool, itstool, glib, gtk3
, packagekit, libsecret, pcre, libxkbcommon, wrapGAppsHook
, libpthreadstubs, libXdmcp, epoxy, at_spi2_core, dbus,libgpgerror
,appstream-glib,desktop_file_utils,ninja
}:

stdenv.mkDerivation rec {
  name = "deja-dup-${version}";
  version = "36.1";

  src = fetchurl {
    url = "https://launchpad.net/deja-dup/36/${version}/+download/deja-dup-${version}.tar.xz";
    sha256 = "1s48k2sxrpwkzp37s4x7934lyg5194c47nv9ks15rksd5s0alnld";
  };

  /*prePatch = ''
    #Disable goa(?)
    substituteInPlace deja-dup/meson.build \
      --replace "goa_dep," ""
  '';*/

  # couldn't find gio/gdesktopappinfo.h
  NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
  nativeBuildInputs=[
    meson pkgconfig vala gettext intltool itstool
    wrapGAppsHook appstream-glib desktop_file_utils ninja
  ];
  buildInputs = [
   libnotify gnome3.libpeas
   glib gtk3 packagekit libsecret# help2man
   pcre libxkbcommon libpthreadstubs libXdmcp epoxy gnome3.nautilus
   at_spi2_core dbus gnome3.gnome_online_accounts
   libgpgerror
  ];

  meta = with stdenv.lib; {
    description = "A simple backup tool";
    longDescription = ''
      Déjà Dup is a simple backup tool. It hides the complexity \
      of backing up the Right Way (encrypted, off-site, and regular) \
      and uses duplicity as the backend.
    '';
    homepage = https://launchpad.net/deja-dup;
    license = with licenses; gpl3;
    maintainers = with maintainers; [ ];
    platforms = with platforms; linux;
  };
}

pasqui (p3dimaria) wrote :

of note that the nix expression operates on the release tarball

Michael Terry (mterry) wrote :

What version of valac?

Michael Terry (mterry) wrote :

We require valac 0.36, but it looks like Nixos doesn't have that yet? (I should have the build error out saying this... Not sure how to do that with meson, since meson & valac seem entwined in a way that does not allow requiring a specific valac version.)

Jan Tojnar (jtojnar) wrote :

Indeed, it builds fine with Vala 0.38 which is in one of the development branches.

Michael Terry (mterry) wrote :

Excellent, thank you! I’ll try to add something to the build to warn in this case.

Changed in deja-dup:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers