[Bug 1699925] Re: ubuntu-defaults-builder doesn't build and doesn't generate depends/recommends in Ubuntu 18.04 and newer

Mantas Kriaučiūnas 1699925 at bugs.launchpad.net
Sun Jul 5 06:16:40 UTC 2020


** Description changed:

  The package fails to build in bionic, artful and newer, as far as I can
  tell because dh_ubuntu_defaults uses deprecated perl features:
  
  Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/\${ <-- HERE distro_release_name}/ at /home/ubuntu/Desktop/ubuntu-defaults-builder-0.57/bin/dh_ubuntu_defaults line 100, <F> line 1.
  debian/rules:7: recipe for target 'override_dh_install' failed
  make[4]: *** [override_dh_install] Error 255
  
+ I've patched bin/dh_ubuntu_defaults by enclosing left brace of ${$var}
+ within square brackets:
+ 
+ --- /usr/bin/dh_ubuntu_defaults	2017-06-23 03:33:59.000000000 +0000
+ +++ bin/dh_ubuntu_defaults	2020-07-05 04:25:29.909974148 +0000
+ @@ -97,7 +97,7 @@
+  	while (/\$\{(\w+)\}/) {
+  	    my $var = $1;
+  	    error "unknown macro: $var" unless exists $macros{$var};
+ -	    s/\${$var}/$macros{$var}/g;
+ +	    s/\$[{]$var}/$macros{$var}/g;
+  	}
+  
+  	push @lines, $_;
+ 
+ Now tests doesn't fail, but when I build defaults package
+ dh_ubuntu_defaults doesn't generate depends/recommends in Ubuntu 18.04
+ and newer if there is a folder "ubiquity-slideshow" in defaults package
+ - I get warnings during build of my ubuntu-defaults package:
+ 
+ dh_install
+ dh_ubuntu_defaults --disable-restrictions
+ dh_ubuntu_defaults: doit() + doit_*() calls will no longer spawn a shell in compat 12 for single string arguments (please use complex_doit instead)
+ dh_ubuntu_defaults: This feature will be removed in compat 12.
+ dh_ubuntu_defaults: doit() + doit_*() calls will no longer spawn a shell in compat 12 for single string arguments (please use complex_doit instead)
+ dh_ubuntu_defaults: This feature will be removed in compat 12.
+ dh_ubuntu_defaults: doit() + doit_*() calls will no longer spawn a shell in compat 12 for single string arguments (please use complex_doit instead)
+ dh_ubuntu_defaults: This feature will be removed in compat 12.
+ make[1]: Leaving directory '/home/ubuntu/Desktop/ubuntu-defaults-baltix-master'
+    dh_installdocs
+    dh_installchangelogs
+    dh_installgsettings
+    dh_icons
+    dh_perl
+    dh_configpackage
+    dh_link
+    dh_strip_nondeterminism
+    dh_compress
+    dh_fixperms
+    dh_missing
+    dh_installdeb
+    dh_gencontrol
+ dpkg-gencontrol: warning: Depends field of package ubuntu-defaults-baltix: unknown substitution variable ${ubuntudefaults:Depends}
+ dpkg-gencontrol: warning: Recommends field of package ubuntu-defaults-baltix: unknown substitution variable ${ubuntudefaults:Recommends}
  
  I'd rather someone who knew perl better than me take a look at this.

** Also affects: baltix-default-settings
   Importance: Undecided
       Status: New

** Changed in: baltix-default-settings
       Status: New => Triaged

** Changed in: baltix-default-settings
   Importance: Undecided => Critical

** Changed in: baltix-default-settings
     Assignee: (unassigned) => Mantas Kriaučiūnas (mantas)

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to ubuntu-defaults-builder in
Ubuntu.
https://bugs.launchpad.net/bugs/1699925

Title:
  ubuntu-defaults-builder doesn't build and doesn't generate
  depends/recommends in Ubuntu 18.04 and newer

Status in Default settings and artwork for Baltix OS:
  Triaged
Status in ubuntu-defaults-builder package in Ubuntu:
  Confirmed

Bug description:
  The package fails to build in bionic, artful and newer, as far as I
  can tell because dh_ubuntu_defaults uses deprecated perl features:

  Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/\${ <-- HERE distro_release_name}/ at /home/ubuntu/Desktop/ubuntu-defaults-builder-0.57/bin/dh_ubuntu_defaults line 100, <F> line 1.
  debian/rules:7: recipe for target 'override_dh_install' failed
  make[4]: *** [override_dh_install] Error 255

  I've patched bin/dh_ubuntu_defaults by enclosing left brace of ${$var}
  within square brackets:

  --- /usr/bin/dh_ubuntu_defaults	2017-06-23 03:33:59.000000000 +0000
  +++ bin/dh_ubuntu_defaults	2020-07-05 04:25:29.909974148 +0000
  @@ -97,7 +97,7 @@
   	while (/\$\{(\w+)\}/) {
   	    my $var = $1;
   	    error "unknown macro: $var" unless exists $macros{$var};
  -	    s/\${$var}/$macros{$var}/g;
  +	    s/\$[{]$var}/$macros{$var}/g;
   	}
   
   	push @lines, $_;

  Now tests doesn't fail, but when I build defaults package
  dh_ubuntu_defaults doesn't generate depends/recommends in Ubuntu 18.04
  and newer if there is a folder "ubiquity-slideshow" in defaults
  package - I get warnings during build of my ubuntu-defaults package:

  dh_install
  dh_ubuntu_defaults --disable-restrictions
  dh_ubuntu_defaults: doit() + doit_*() calls will no longer spawn a shell in compat 12 for single string arguments (please use complex_doit instead)
  dh_ubuntu_defaults: This feature will be removed in compat 12.
  dh_ubuntu_defaults: doit() + doit_*() calls will no longer spawn a shell in compat 12 for single string arguments (please use complex_doit instead)
  dh_ubuntu_defaults: This feature will be removed in compat 12.
  dh_ubuntu_defaults: doit() + doit_*() calls will no longer spawn a shell in compat 12 for single string arguments (please use complex_doit instead)
  dh_ubuntu_defaults: This feature will be removed in compat 12.
  make[1]: Leaving directory '/home/ubuntu/Desktop/ubuntu-defaults-baltix-master'
     dh_installdocs
     dh_installchangelogs
     dh_installgsettings
     dh_icons
     dh_perl
     dh_configpackage
     dh_link
     dh_strip_nondeterminism
     dh_compress
     dh_fixperms
     dh_missing
     dh_installdeb
     dh_gencontrol
  dpkg-gencontrol: warning: Depends field of package ubuntu-defaults-baltix: unknown substitution variable ${ubuntudefaults:Depends}
  dpkg-gencontrol: warning: Recommends field of package ubuntu-defaults-baltix: unknown substitution variable ${ubuntudefaults:Recommends}

  I'd rather someone who knew perl better than me take a look at this.

To manage notifications about this bug go to:
https://bugs.launchpad.net/baltix-default-settings/+bug/1699925/+subscriptions



More information about the foundations-bugs mailing list