From lequintero at mij.gov.ve Mon Aug 25 09:25:48 2014 From: lequintero at mij.gov.ve (Abie Abraham) Date: Mon, 25 Aug 2014 04:55:48 -0430 (VET) Subject: [debhelper-devel] (no subject) Message-ID: <33354602.39061408958748260.JavaMail.root@mail.mij.gov.ve> My name is Abie Abraham Please kindly view attache file for more details for the business offer. -------------- next part -------------- A non-text attachment was scrubbed... Name: Abie Abraham.docx Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document Size: 14635 bytes Desc: not available URL: From lequintero at mij.gov.ve Mon Aug 25 09:25:48 2014 From: lequintero at mij.gov.ve (Abie Abraham) Date: Mon, 25 Aug 2014 04:55:48 -0430 (VET) Subject: [debhelper-devel] (no subject) Message-ID: <33354602.39061408958748260.JavaMail.root@mail.mij.gov.ve> My name is Abie Abraham Please kindly view attache file for more details for the business offer. -------------- next part -------------- A non-text attachment was scrubbed... Name: Abie Abraham.docx Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document Size: 14635 bytes Desc: not available URL: From officerresearch07 at gmail.com Thu Aug 28 04:07:44 2014 From: officerresearch07 at gmail.com (marketing manager) Date: Thu, 28 Aug 2014 09:07:44 +0500 Subject: [debhelper-devel] 2nd International Conference on Economics, Finance and Management Outlooks Message-ID: Dear *Sir/Madam* The *Asian Economic and Social Society and Pak Publishing Group* are organizing a 2nd International Conference on Economics, Finance and Management Outlooks 20-21 December, 2014,* Pearl International Hotel, Kuala Lumpur, Malaysia.* Website: http://www.pakrdw.com/?ic=details&id=4 We would like to take this opportunity to invite you and your colleagues to attend this conference on *20-21 December, 2014 Malaysia*. Please share this call for paper with your friends and colleagues through forwarding e-mail. The call for paper find below this e-mail. *Call for Paper* The 2nd International Conference on Economics, Finance and Management Outlooks 20-21 December is organized by the Asian Economic and Social Society, and Pak Publishing Group. The purpose of this conference is to bring together researchers from around the globe in order to present and discuss new trends in the fields of Scientific Research. *Topics of interest for submission include, but are not limited to:* Conference Main Theme: Economics, Finance and Management Outlooks *Sub-themes* *Economic Issues* Growth and Development Strategies Fiscal System and Policy Monetary System and Policy Income Distribution Poverty Unemployment Inflation Investment Consumption and Saving Human Capital Trade Policy FDI WTO The History of Economic Thought Energy and Environment Financial Issues Financial Reforms Finance and Investment Finance and Saving International Trade and *Finance* Asset Pricing Theory Risk Securitization Derivatives and Structured Financial Products Commercial Insurance and Reinsurance Corporate Finance, Mergers and Acquisitions The Microstructure of the Financial Market Liquidity and Price mechanism in stock Market *Management Issues * Business Management Corporate Governance Human Resource Management Business & Market Strategies Entrepreneurship E-business Services Information Technology Management Production & Operations Strategies Total Quality Management Strategic Management Mutual Fund Management T-bill, T-bond, and Dividend Policy Management Research Methods and Managerial Economics Corporate Social Responsibility Economic Sustainability and any disciplines concerning the interaction between management and enterprise sustainable development *Proceeding* All selected papers will be published in a book with an ISBN by Pak publishing Group. Conference proceedings will be submitted to ISI Thomson Reuters Web of Science, Google Scholar, and Microsoft Academic Search for consideration and indexation. *Journal Publication* After conference presentation few selected papers will publish in the special or regular issues of the following journals: *Asian Economic and Financial Review * (*Online ISSN:* 2222-6737 - *Print ISSN:* 2305-2147 ) URL: http://www.aessweb.com/journals/5002 *International journal of Asian Social Science * (*Online ISSN: *2224-4441*- Print ISSN: *2226-5139 ) URL : http://www.aessweb.com/journals/5007 *International Journal of Management and Sustainability * (*Online ISSN:* 2306-0662* - Print ISSN:* 2306-9856 ) URL : http://www.pakinsight.com/?ic=journal&journal=11 *International Journal of Sustainable Development & World Policy * (*Online ISSN: *2305-705X* - Print ISSN: *2306-9929) URL: http://www.pakinsight.com/?ic=journal&journal=26 *International Journal of Sustainable Energy and Environmental Research* (*Online ISSN: *2306-6253* - Print ISSN: *2312-5764) URL: http://www.pakinsight.com/?ic=journal&journal=13 *Humanities and Social Sciences Letters ( Online ISSN: 2312-4318 ) URL: * http://www.pakinsight.com/?ic=journal&journal=73 International Journal of Business, Economics and Management (Online ISSN: 2312-0916 - Print ISSN: 2312-5772) *Journal of Empirical Studies * (Online ISSN: 2312-6248 - Print ISSN: 2312-623X) URL: http://www.pakinsight.com/?ic=journal&journal=66 Journal of Social Economics Research (Online ISSN: 2312-6264 - Print ISSN: 2312-6329) URL: http://www.pakinsight.com/?ic=journal&journal=35 *Review of Knowledge Economy URL: * http://www.pakinsight.com/?ic=journal&journal=67 * Journal of Tourism Management Research URL:* http://www.pakinsight.com/?ic=journal&journal=31 Journal of Challenges *URL:* http://www.pakinsight.com/?ic=journal&journal=85 *The Econometric Reviews URL: * http://www.pakinsight.com/?ic=journal&journal=88 * International Journal of Public Policy and Administration Research URL: * http://www.pakinsight.com/?ic=journal&journal=74 *IMPORTANT DATES* Abstract Submission Date: 27 September, 2014 Decision of Acceptance/Rejection: Within 15 days of submission Full Paper Submission Date: 14 November, 2014 Early Bird Discount Date: 14 November, 2014 Conference date: 20-21 December, 2014 *Submit your paper: * *http://www.pakrdw.com/?ic=details&id=4&info=submission* *Registration:* http://www.pakrdw.com/?ic=details&id=4&info=dates *Download Conference Brochure:* Conference Brochure *Contact Information* ICEFMO 2014 Secretariat Asian Economic and Social Society Pak Publishing Group E-mail: conference at pakinsight.com ; editor at aessweb.com Website: http://www.pakrdw.com/?ic=details&id=4 -------------- next part -------------- An HTML attachment was scrubbed... URL: From hr at bankandara.co.id Fri Aug 29 06:52:18 2014 From: hr at bankandara.co.id (Financial Service) Date: Fri, 29 Aug 2014 12:22:18 +0530 Subject: [debhelper-devel] Loan Offer Message-ID: <20140829065404.9D79BF2A044@azteca.fmed.uba.ar> Good Day, Do you need a LOAN or Financing of any type? Have you been turned down by your bank due to bad credit? Do you have unpaid bills or debt? For quick response contact us with the below information's. Our loan programme is mainly in any currency USD, CAD, KWD, OMR, SGD, GBP, AUD, MYR? INR. Sincerely, Mr,william Ramadas From debian at kvr.at Sat Aug 30 16:54:03 2014 From: debian at kvr.at (Christian Kastner) Date: Sat, 30 Aug 2014 09:54:03 -0700 Subject: [debhelper-devel] Bug#759812: Make the multiarch tuple available in helpers Message-ID: <540201AB.7080804@kvr.at> Package: debhelper Version: 9.20140817 Severity: wishlist Tags: patch With multiarch, some use cases which would traditionally be solved through the static *.dirs, *.install, and *.link files now require hackery in debian/rules instead, as some of the operations need the build-time multiarch tuple. It would be great if these files would support a substitution or placeholder for the multiarch tuple so that we can go back to the traditional approach even for multiarch packages. Example #1 ========== A library package with a custom Makefile that installs everything to $(DESTDIR), and in particular the shared library to a hard-coded $(DESTDIR)/usr/lib/. Before multi-arch, this was not an issue. I would just have created simple one-line debian/libfooX.install files, and be done with it. Now, I have to query DEB_HOST_MULTIARCH in debian/rules, override dh_install, and move stuff around manually. Given the long path names involved, this is really clutters up things. Example #2 ========== An essential library package using autoconf. The FHS specifies that the essential library should go into /lib/, but development files (eg: .so symlink, pkgconfig files) must go into /usr/lib/. This, too, requires a lot of manual moving and symlinking where otherwise one-line *.{dirs,install,link} files would have sufficed. Proposed Solution ================= The attached patch extends dh_installdirs, dh_install, and dh_link such that in v10 mode, the literal string :multiarch: is substituted with the appropriate multiarch tuple during their operation. Coming back to example #1, this should then work (and make debian/rules hackery unnecessary): [ debian/libfooX.install ] usr/lib/*.so.* usr/lib/:multiarch:/ The real added value is in the more complex cases, though. Possible Issues =============== The substitution is currently applied not only to debian/package.* files, but to direct invocations of the dh_* helpers as well. I don't know if this is a problem. There might be a better alternative to the choice of :multiarch: as substitution string, but to avoid conflicts, it should probably not include symbols with a special meaning within debian/rules. The dh_link extension is not as useful as the others because it does not support wildcards are not supported. For example, in the -dev package, I cannot symlink the .so to the .so.X.Y via .so.*.* I haven't looked into the translation stuff. I'm not aware of any use cases for it, but theoretically the same approach could be applied to other DEB_*_ variables, in which case a substitution such as :host:multarch: might be better. Christian -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Make-the-multiarch-tuple-available-in-some-helpers.patch Type: text/x-patch Size: 4525 bytes Desc: not available URL: From debian at kvr.at Sat Aug 30 16:54:03 2014 From: debian at kvr.at (Christian Kastner) Date: Sat, 30 Aug 2014 09:54:03 -0700 Subject: [debhelper-devel] Bug#759812: Make the multiarch tuple available in helpers Message-ID: <540201AB.7080804@kvr.at> Package: debhelper Version: 9.20140817 Severity: wishlist Tags: patch With multiarch, some use cases which would traditionally be solved through the static *.dirs, *.install, and *.link files now require hackery in debian/rules instead, as some of the operations need the build-time multiarch tuple. It would be great if these files would support a substitution or placeholder for the multiarch tuple so that we can go back to the traditional approach even for multiarch packages. Example #1 ========== A library package with a custom Makefile that installs everything to $(DESTDIR), and in particular the shared library to a hard-coded $(DESTDIR)/usr/lib/. Before multi-arch, this was not an issue. I would just have created simple one-line debian/libfooX.install files, and be done with it. Now, I have to query DEB_HOST_MULTIARCH in debian/rules, override dh_install, and move stuff around manually. Given the long path names involved, this is really clutters up things. Example #2 ========== An essential library package using autoconf. The FHS specifies that the essential library should go into /lib/, but development files (eg: .so symlink, pkgconfig files) must go into /usr/lib/. This, too, requires a lot of manual moving and symlinking where otherwise one-line *.{dirs,install,link} files would have sufficed. Proposed Solution ================= The attached patch extends dh_installdirs, dh_install, and dh_link such that in v10 mode, the literal string :multiarch: is substituted with the appropriate multiarch tuple during their operation. Coming back to example #1, this should then work (and make debian/rules hackery unnecessary): [ debian/libfooX.install ] usr/lib/*.so.* usr/lib/:multiarch:/ The real added value is in the more complex cases, though. Possible Issues =============== The substitution is currently applied not only to debian/package.* files, but to direct invocations of the dh_* helpers as well. I don't know if this is a problem. There might be a better alternative to the choice of :multiarch: as substitution string, but to avoid conflicts, it should probably not include symbols with a special meaning within debian/rules. The dh_link extension is not as useful as the others because it does not support wildcards are not supported. For example, in the -dev package, I cannot symlink the .so to the .so.X.Y via .so.*.* I haven't looked into the translation stuff. I'm not aware of any use cases for it, but theoretically the same approach could be applied to other DEB_*_ variables, in which case a substitution such as :host:multarch: might be better. Christian -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Make-the-multiarch-tuple-available-in-some-helpers.patch Type: text/x-patch Size: 4525 bytes Desc: not available URL: From roam at ringlet.net Sat Aug 30 17:21:31 2014 From: roam at ringlet.net (Peter Pentchev) Date: Sat, 30 Aug 2014 20:21:31 +0300 Subject: [debhelper-devel] Bug#759812: Bug#759812: Make the multiarch tuple available in helpers In-Reply-To: <540201AB.7080804@kvr.at> References: <540201AB.7080804@kvr.at> Message-ID: <20140830172131.GD2200@straylight.m.ringlet.net> On Sat, Aug 30, 2014 at 09:54:03AM -0700, Christian Kastner wrote: > Package: debhelper > Version: 9.20140817 > Severity: wishlist > Tags: patch > > With multiarch, some use cases which would traditionally be solved > through the static *.dirs, *.install, and *.link files now require > hackery in debian/rules instead, as some of the operations need the > build-time multiarch tuple. > > It would be great if these files would support a substitution or > placeholder for the multiarch tuple so that we can go back to the > traditional approach even for multiarch packages. > > > Example #1 > ========== > > A library package with a custom Makefile that installs everything to > $(DESTDIR), and in particular the shared library to a hard-coded > $(DESTDIR)/usr/lib/. > > Before multi-arch, this was not an issue. I would just have created > simple one-line debian/libfooX.install files, and be done with it. Now, > I have to query DEB_HOST_MULTIARCH in debian/rules, override dh_install, > and move stuff around manually. Given the long path names involved, this > is really clutters up things. > > Example #2 > ========== > > An essential library package using autoconf. > > The FHS specifies that the essential library should go into /lib/, but > development files (eg: .so symlink, pkgconfig files) must go into > /usr/lib/. This, too, requires a lot of manual moving and symlinking > where otherwise one-line *.{dirs,install,link} files would have sufficed. Hmm, you do realize that for both these examples in most cases something like /usr/lib/*/... would work? For example, libfreetype6-dev has this in debian/libfreetype6.install: usr/lib/*/*.so.* And dh_install(1) scans all subdirectories of debian/tmp/usr/lib/ for files matching the rest of the glob pattern and copies them over. Also, a not-uploaded-yet version of dante has this in dante-client.install: usr/lib/*/dante-client/libdsocksd.so I'm not saying that your patch is a bad thing; on the contrary, some kind of replacement mechanism would make things a bit more explicit. All I'm saying is that in most cases it is possible even now to install multiarch libraries without autogenerating debian/*.install files. G'luck, Peter -- Peter Pentchev roam at ringlet.net roam at FreeBSD.org p.penchev at storpool.com PGP key: http://people.FreeBSD.org/~roam/roam.key.asc Key fingerprint 2EE7 A7A5 17FC 124C F115 C354 651E EFB0 2527 DF13 -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: Digital signature URL: From roam at ringlet.net Sat Aug 30 17:21:31 2014 From: roam at ringlet.net (Peter Pentchev) Date: Sat, 30 Aug 2014 20:21:31 +0300 Subject: [debhelper-devel] Bug#759812: Bug#759812: Make the multiarch tuple available in helpers In-Reply-To: <540201AB.7080804@kvr.at> References: <540201AB.7080804@kvr.at> Message-ID: <20140830172131.GD2200@straylight.m.ringlet.net> On Sat, Aug 30, 2014 at 09:54:03AM -0700, Christian Kastner wrote: > Package: debhelper > Version: 9.20140817 > Severity: wishlist > Tags: patch > > With multiarch, some use cases which would traditionally be solved > through the static *.dirs, *.install, and *.link files now require > hackery in debian/rules instead, as some of the operations need the > build-time multiarch tuple. > > It would be great if these files would support a substitution or > placeholder for the multiarch tuple so that we can go back to the > traditional approach even for multiarch packages. > > > Example #1 > ========== > > A library package with a custom Makefile that installs everything to > $(DESTDIR), and in particular the shared library to a hard-coded > $(DESTDIR)/usr/lib/. > > Before multi-arch, this was not an issue. I would just have created > simple one-line debian/libfooX.install files, and be done with it. Now, > I have to query DEB_HOST_MULTIARCH in debian/rules, override dh_install, > and move stuff around manually. Given the long path names involved, this > is really clutters up things. > > Example #2 > ========== > > An essential library package using autoconf. > > The FHS specifies that the essential library should go into /lib/, but > development files (eg: .so symlink, pkgconfig files) must go into > /usr/lib/. This, too, requires a lot of manual moving and symlinking > where otherwise one-line *.{dirs,install,link} files would have sufficed. Hmm, you do realize that for both these examples in most cases something like /usr/lib/*/... would work? For example, libfreetype6-dev has this in debian/libfreetype6.install: usr/lib/*/*.so.* And dh_install(1) scans all subdirectories of debian/tmp/usr/lib/ for files matching the rest of the glob pattern and copies them over. Also, a not-uploaded-yet version of dante has this in dante-client.install: usr/lib/*/dante-client/libdsocksd.so I'm not saying that your patch is a bad thing; on the contrary, some kind of replacement mechanism would make things a bit more explicit. All I'm saying is that in most cases it is possible even now to install multiarch libraries without autogenerating debian/*.install files. G'luck, Peter -- Peter Pentchev roam at ringlet.net roam at FreeBSD.org p.penchev at storpool.com PGP key: http://people.FreeBSD.org/~roam/roam.key.asc Key fingerprint 2EE7 A7A5 17FC 124C F115 C354 651E EFB0 2527 DF13 -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: Digital signature URL: From joeyh at debian.org Sat Aug 30 17:57:40 2014 From: joeyh at debian.org (Joey Hess) Date: Sat, 30 Aug 2014 10:57:40 -0700 Subject: [debhelper-devel] Bug#759812: Bug#759812: Make the multiarch tuple available in helpers In-Reply-To: <540201AB.7080804@kvr.at> References: <540201AB.7080804@kvr.at> Message-ID: <20140830175740.GA16004@kitenet.net> Christian Kastner wrote: > The attached patch extends dh_installdirs, dh_install, and dh_link such > that in v10 mode, the literal string :multiarch: is substituted with the > appropriate multiarch tuple during their operation. I think that Ubuntu had a patch for this or something similar earlier, so it may be good to reuse the syntax. Or perhaps ${multiarch}. We need to avoid something that conflicts with anything in any debhelper config files. It would be good to eg, grep the lintian lab. > The substitution is currently applied not only to debian/package.* > files, but to direct invocations of the dh_* helpers as well. I don't > know if this is a problem. It makes it harder to prove that it doesn't break anything currently. Is there any use case for it? > +my $multiarch=dpkg_architecture_value("DEB_HOST_MULTIARCH"); > + s/:multiarch:/$multiarch/g for @$set; This forces a call to dpkg-architecture in the common case where the substitution is not used. Instead, it should only look up the value once it find a use of it. That will be more complicated, but this repeated code needs to be refactored anyway.. -- see shy jo -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 811 bytes Desc: Digital signature URL: From joeyh at debian.org Sat Aug 30 17:57:40 2014 From: joeyh at debian.org (Joey Hess) Date: Sat, 30 Aug 2014 10:57:40 -0700 Subject: [debhelper-devel] Bug#759812: Bug#759812: Make the multiarch tuple available in helpers In-Reply-To: <540201AB.7080804@kvr.at> References: <540201AB.7080804@kvr.at> Message-ID: <20140830175740.GA16004@kitenet.net> Christian Kastner wrote: > The attached patch extends dh_installdirs, dh_install, and dh_link such > that in v10 mode, the literal string :multiarch: is substituted with the > appropriate multiarch tuple during their operation. I think that Ubuntu had a patch for this or something similar earlier, so it may be good to reuse the syntax. Or perhaps ${multiarch}. We need to avoid something that conflicts with anything in any debhelper config files. It would be good to eg, grep the lintian lab. > The substitution is currently applied not only to debian/package.* > files, but to direct invocations of the dh_* helpers as well. I don't > know if this is a problem. It makes it harder to prove that it doesn't break anything currently. Is there any use case for it? > +my $multiarch=dpkg_architecture_value("DEB_HOST_MULTIARCH"); > + s/:multiarch:/$multiarch/g for @$set; This forces a call to dpkg-architecture in the common case where the substitution is not used. Instead, it should only look up the value once it find a use of it. That will be more complicated, but this repeated code needs to be refactored anyway.. -- see shy jo -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 811 bytes Desc: Digital signature URL: From debian at kvr.at Sat Aug 30 19:07:06 2014 From: debian at kvr.at (Christian Kastner) Date: Sat, 30 Aug 2014 12:07:06 -0700 Subject: [debhelper-devel] Bug#759812: Bug#759812: Make the multiarch tuple available in helpers In-Reply-To: <20140830172131.GD2200@straylight.m.ringlet.net> References: <540201AB.7080804@kvr.at> <20140830172131.GD2200@straylight.m.ringlet.net> Message-ID: <540220DA.5000401@kvr.at> On 2014-08-30 10:21, Peter Pentchev wrote: > On Sat, Aug 30, 2014 at 09:54:03AM -0700, Christian Kastner wrote: >> >> Example #1 >> ========== >> >> A library package with a custom Makefile that installs everything to >> $(DESTDIR), and in particular the shared library to a hard-coded >> $(DESTDIR)/usr/lib/. >> >> Before multi-arch, this was not an issue. I would just have created >> simple one-line debian/libfooX.install files, and be done with it. Now, >> I have to query DEB_HOST_MULTIARCH in debian/rules, override dh_install, >> and move stuff around manually. Given the long path names involved, this >> is really clutters up things. >> >> Example #2 >> ========== >> >> An essential library package using autoconf. >> >> The FHS specifies that the essential library should go into /lib/, but >> development files (eg: .so symlink, pkgconfig files) must go into >> /usr/lib/. This, too, requires a lot of manual moving and symlinking >> where otherwise one-line *.{dirs,install,link} files would have sufficed. > > Hmm, you do realize that for both these examples in most cases something > like /usr/lib/*/... would work? For example, libfreetype6-dev has this > in debian/libfreetype6.install: > > usr/lib/*/*.so.* > > And dh_install(1) scans all subdirectories of debian/tmp/usr/lib/ for > files matching the rest of the glob pattern and copies them over. That works only for the source argument and iff the source argument is already multiarch-ified (so that the glob pattern matches), which is not the case in Example #1. But if you need the multiarch *destination* for any reason, as in Example #2, that won't work. Christian From debian at kvr.at Sat Aug 30 19:07:06 2014 From: debian at kvr.at (Christian Kastner) Date: Sat, 30 Aug 2014 12:07:06 -0700 Subject: [debhelper-devel] Bug#759812: Bug#759812: Make the multiarch tuple available in helpers In-Reply-To: <20140830172131.GD2200@straylight.m.ringlet.net> References: <540201AB.7080804@kvr.at> <20140830172131.GD2200@straylight.m.ringlet.net> Message-ID: <540220DA.5000401@kvr.at> On 2014-08-30 10:21, Peter Pentchev wrote: > On Sat, Aug 30, 2014 at 09:54:03AM -0700, Christian Kastner wrote: >> >> Example #1 >> ========== >> >> A library package with a custom Makefile that installs everything to >> $(DESTDIR), and in particular the shared library to a hard-coded >> $(DESTDIR)/usr/lib/. >> >> Before multi-arch, this was not an issue. I would just have created >> simple one-line debian/libfooX.install files, and be done with it. Now, >> I have to query DEB_HOST_MULTIARCH in debian/rules, override dh_install, >> and move stuff around manually. Given the long path names involved, this >> is really clutters up things. >> >> Example #2 >> ========== >> >> An essential library package using autoconf. >> >> The FHS specifies that the essential library should go into /lib/, but >> development files (eg: .so symlink, pkgconfig files) must go into >> /usr/lib/. This, too, requires a lot of manual moving and symlinking >> where otherwise one-line *.{dirs,install,link} files would have sufficed. > > Hmm, you do realize that for both these examples in most cases something > like /usr/lib/*/... would work? For example, libfreetype6-dev has this > in debian/libfreetype6.install: > > usr/lib/*/*.so.* > > And dh_install(1) scans all subdirectories of debian/tmp/usr/lib/ for > files matching the rest of the glob pattern and copies them over. That works only for the source argument and iff the source argument is already multiarch-ified (so that the glob pattern matches), which is not the case in Example #1. But if you need the multiarch *destination* for any reason, as in Example #2, that won't work. Christian From debian at kvr.at Sat Aug 30 19:21:47 2014 From: debian at kvr.at (Christian Kastner) Date: Sat, 30 Aug 2014 12:21:47 -0700 Subject: [debhelper-devel] Bug#759812: Bug#759812: Make the multiarch tuple available in helpers In-Reply-To: <20140830175740.GA16004@kitenet.net> References: <540201AB.7080804@kvr.at> <20140830175740.GA16004@kitenet.net> Message-ID: <5402244B.3000201@kvr.at> On 2014-08-30 10:57, Joey Hess wrote: > Christian Kastner wrote: >> The attached patch extends dh_installdirs, dh_install, and dh_link such >> that in v10 mode, the literal string :multiarch: is substituted with the >> appropriate multiarch tuple during their operation. > > I think that Ubuntu had a patch for this or something similar > earlier, so it may be good to reuse the syntax. Or perhaps ${multiarch}. I had something similar in my first draft, but then thought that might conflict with direct invocations, eg: dh_install foo.so /usr/lib/${multiarch} To avoid expansion, the destination would have to be escaped. Of course, if direct invocations aren't a use case, the choice is less critical. > We need to avoid something that conflicts with anything in any debhelper > config files. It would be good to eg, grep the lintian lab. > >> The substitution is currently applied not only to debian/package.* >> files, but to direct invocations of the dh_* helpers as well. I don't >> know if this is a problem. > > It makes it harder to prove that it doesn't break anything currently. > Is there any use case for it? I was going to say no, but I think I may have come up with one: what about dh_install/dh_link calls excluding files with -X? I can't see a use case for direct invocations of dh_installdirs. >> +my $multiarch=dpkg_architecture_value("DEB_HOST_MULTIARCH"); > >> + s/:multiarch:/$multiarch/g for @$set; > > This forces a call to dpkg-architecture in the common case where the > substitution is not used. Instead, it should only look up the value > once it find a use of it. > > That will be more complicated, but this repeated code needs to be > refactored anyway.. I'm not a perl guy, but I'll try to look into it. Christian From debian at kvr.at Sat Aug 30 19:21:47 2014 From: debian at kvr.at (Christian Kastner) Date: Sat, 30 Aug 2014 12:21:47 -0700 Subject: [debhelper-devel] Bug#759812: Bug#759812: Make the multiarch tuple available in helpers In-Reply-To: <20140830175740.GA16004@kitenet.net> References: <540201AB.7080804@kvr.at> <20140830175740.GA16004@kitenet.net> Message-ID: <5402244B.3000201@kvr.at> On 2014-08-30 10:57, Joey Hess wrote: > Christian Kastner wrote: >> The attached patch extends dh_installdirs, dh_install, and dh_link such >> that in v10 mode, the literal string :multiarch: is substituted with the >> appropriate multiarch tuple during their operation. > > I think that Ubuntu had a patch for this or something similar > earlier, so it may be good to reuse the syntax. Or perhaps ${multiarch}. I had something similar in my first draft, but then thought that might conflict with direct invocations, eg: dh_install foo.so /usr/lib/${multiarch} To avoid expansion, the destination would have to be escaped. Of course, if direct invocations aren't a use case, the choice is less critical. > We need to avoid something that conflicts with anything in any debhelper > config files. It would be good to eg, grep the lintian lab. > >> The substitution is currently applied not only to debian/package.* >> files, but to direct invocations of the dh_* helpers as well. I don't >> know if this is a problem. > > It makes it harder to prove that it doesn't break anything currently. > Is there any use case for it? I was going to say no, but I think I may have come up with one: what about dh_install/dh_link calls excluding files with -X? I can't see a use case for direct invocations of dh_installdirs. >> +my $multiarch=dpkg_architecture_value("DEB_HOST_MULTIARCH"); > >> + s/:multiarch:/$multiarch/g for @$set; > > This forces a call to dpkg-architecture in the common case where the > substitution is not used. Instead, it should only look up the value > once it find a use of it. > > That will be more complicated, but this repeated code needs to be > refactored anyway.. I'm not a perl guy, but I'll try to look into it. Christian From lunar at debian.org Sat Aug 30 20:15:49 2014 From: lunar at debian.org (=?UTF-8?Q?J=C3=A9r=C3=A9my?= Bobbio) Date: Sat, 30 Aug 2014 20:15:49 +0000 Subject: [debhelper-devel] Bug#759886: debhelper: please make mtimes of packaged files deterministic Message-ID: <20140830201549.GF18562@localhost.localdomain> Package: debhelper Version: 9.20140817 User: reproducible-builds at lists.alioth.debian.org Usertags: toolchain, timestamps X-Debbugs-Cc: reproducible-builds at lists.alioth.debian.org Hi! As part of the ?reproducible builds? project?[1], it would be great to get the files shipped in the Debian package have deterministic mtimes. The attached patch will add a new helper `dh_fixmtimes`, largely inspired by `dh_fixperms`, that will change the modification time of any file that has been created later than the time of the latest debian/changelog entry to the time of the latest debian/changelog entry. This helper is set to run right before `dh_builddeb` in the `dh` process. [1]: https://wiki.debian.org/ReproducibleBuilds -- Lunar .''`. lunar at debian.org : :? : # apt-get install anarchism `. `'` `- -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: Digital signature URL: From lunar at debian.org Sat Aug 30 20:15:49 2014 From: lunar at debian.org (=?UTF-8?Q?J=C3=A9r=C3=A9my?= Bobbio) Date: Sat, 30 Aug 2014 20:15:49 +0000 Subject: [debhelper-devel] Bug#759886: debhelper: please make mtimes of packaged files deterministic Message-ID: <20140830201549.GF18562@localhost.localdomain> Package: debhelper Version: 9.20140817 User: reproducible-builds at lists.alioth.debian.org Usertags: toolchain, timestamps X-Debbugs-Cc: reproducible-builds at lists.alioth.debian.org Hi! As part of the ?reproducible builds? project?[1], it would be great to get the files shipped in the Debian package have deterministic mtimes. The attached patch will add a new helper `dh_fixmtimes`, largely inspired by `dh_fixperms`, that will change the modification time of any file that has been created later than the time of the latest debian/changelog entry to the time of the latest debian/changelog entry. This helper is set to run right before `dh_builddeb` in the `dh` process. [1]: https://wiki.debian.org/ReproducibleBuilds -- Lunar .''`. lunar at debian.org : :? : # apt-get install anarchism `. `'` `- -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: Digital signature URL: From lunar at debian.org Sat Aug 30 20:26:42 2014 From: lunar at debian.org (=?UTF-8?Q?J=C3=A9r=C3=A9my?= Bobbio) Date: Sat, 30 Aug 2014 20:26:42 +0000 Subject: [debhelper-devel] Bug#759886: debhelper: please make mtimes of packaged files deterministic In-Reply-To: <20140830201549.GF18562@localhost.localdomain> References: <20140830201549.GF18562@localhost.localdomain> Message-ID: <20140830202642.GG18562@localhost.localdomain> Control: tags -1 + patch Lunar: > The attached patch will add a new helper `dh_fixmtimes`, largely > inspired by `dh_fixperms`, that will change the modification time of any > file that has been created later than the time of the latest > debian/changelog entry to the time of the latest debian/changelog entry. This time with the patch. *sigh* -- Lunar .''`. lunar at debian.org : :? : # apt-get install anarchism `. `'` `- -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-dh_fixmtimes-introduce-new-helper-to-fix-mtimes-for-.patch Type: text/x-diff Size: 5199 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: Digital signature URL: From owner at bugs.debian.org Sat Aug 30 20:30:09 2014 From: owner at bugs.debian.org (Debian Bug Tracking System) Date: Sat, 30 Aug 2014 20:30:09 +0000 Subject: [debhelper-devel] Processed: Re: debhelper: please make mtimes of packaged files deterministic References: <20140830202642.GG18562@localhost.localdomain> <20140830201549.GF18562@localhost.localdomain> Message-ID: Processing control commands: > tags -1 + patch Bug #759886 [debhelper] debhelper: please make mtimes of packaged files deterministic Added tag(s) patch. -- 759886: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=759886 Debian Bug Tracking System Contact owner at bugs.debian.org with problems From lunar at debian.org Sat Aug 30 20:26:42 2014 From: lunar at debian.org (=?UTF-8?Q?J=C3=A9r=C3=A9my?= Bobbio) Date: Sat, 30 Aug 2014 20:26:42 +0000 Subject: [debhelper-devel] Bug#759886: debhelper: please make mtimes of packaged files deterministic In-Reply-To: <20140830201549.GF18562@localhost.localdomain> References: <20140830201549.GF18562@localhost.localdomain> Message-ID: <20140830202642.GG18562@localhost.localdomain> Control: tags -1 + patch Lunar: > The attached patch will add a new helper `dh_fixmtimes`, largely > inspired by `dh_fixperms`, that will change the modification time of any > file that has been created later than the time of the latest > debian/changelog entry to the time of the latest debian/changelog entry. This time with the patch. *sigh* -- Lunar .''`. lunar at debian.org : :? : # apt-get install anarchism `. `'` `- -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-dh_fixmtimes-introduce-new-helper-to-fix-mtimes-for-.patch Type: text/x-diff Size: 5199 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: Digital signature URL: From owner at bugs.debian.org Sat Aug 30 20:30:09 2014 From: owner at bugs.debian.org (Debian Bug Tracking System) Date: Sat, 30 Aug 2014 20:30:09 +0000 Subject: [debhelper-devel] Processed: Re: debhelper: please make mtimes of packaged files deterministic References: <20140830202642.GG18562@localhost.localdomain> <20140830201549.GF18562@localhost.localdomain> Message-ID: Processing control commands: > tags -1 + patch Bug #759886 [debhelper] debhelper: please make mtimes of packaged files deterministic Added tag(s) patch. -- 759886: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=759886 Debian Bug Tracking System Contact owner at bugs.debian.org with problems From lunar at debian.org Sat Aug 30 20:39:13 2014 From: lunar at debian.org (=?UTF-8?Q?J=C3=A9r=C3=A9my?= Bobbio) Date: Sat, 30 Aug 2014 20:39:13 +0000 Subject: [debhelper-devel] Bug#759895: debhelper: please strip non-deterministic data from static libraries Message-ID: <20140830203913.GH18562@localhost.localdomain> Package: debhelper Version: 9.20140817 Tags: patch User: reproducible-builds at lists.alioth.debian.org Usertags: toolchain, timestamps X-Debbugs-Cc: reproducible-builds at lists.alioth.debian.org Hi! Currently, static libraries shipped in Debian package capture the time when the package is built. As part of the ?reproducible builds? project?[1], it would be great to have static libriaries normalized. The attached patch will make `dh_strip` replace non-deterministic data in static libraries. The replacement data is the same as the one put by `ar` from binutils when used with the `D` option (deterministic mode). [1]: https://wiki.debian.org/ReproducibleBuilds -- Lunar .''`. lunar at debian.org : :? : # apt-get install anarchism `. `'` `- -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-dh_strip-normalize-ar-file-headers-for-reproducible-.patch Type: text/x-diff Size: 3597 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: Digital signature URL: From lunar at debian.org Sat Aug 30 20:39:13 2014 From: lunar at debian.org (=?UTF-8?Q?J=C3=A9r=C3=A9my?= Bobbio) Date: Sat, 30 Aug 2014 20:39:13 +0000 Subject: [debhelper-devel] Bug#759895: debhelper: please strip non-deterministic data from static libraries Message-ID: <20140830203913.GH18562@localhost.localdomain> Package: debhelper Version: 9.20140817 Tags: patch User: reproducible-builds at lists.alioth.debian.org Usertags: toolchain, timestamps X-Debbugs-Cc: reproducible-builds at lists.alioth.debian.org Hi! Currently, static libraries shipped in Debian package capture the time when the package is built. As part of the ?reproducible builds? project?[1], it would be great to have static libriaries normalized. The attached patch will make `dh_strip` replace non-deterministic data in static libraries. The replacement data is the same as the one put by `ar` from binutils when used with the `D` option (deterministic mode). [1]: https://wiki.debian.org/ReproducibleBuilds -- Lunar .''`. lunar at debian.org : :? : # apt-get install anarchism `. `'` `- -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-dh_strip-normalize-ar-file-headers-for-reproducible-.patch Type: text/x-diff Size: 3597 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: Digital signature URL: From mika at debian.org Sun Aug 31 06:18:58 2014 From: mika at debian.org (Michael Prokop) Date: Sun, 31 Aug 2014 08:18:58 +0200 Subject: [debhelper-devel] Bug#760033: debhelper: dh_clean removes Git refs information with certain suffixes like .orig, .rej, ... Message-ID: <2014-08-31T07-53-27@devnull.michael-prokop.at> Package: debhelper Version: 9.20140817 Severity: critical Justification: causes serious data loss I had a branch named "mika/678696.orig" in one of my Git repositories and when executing git-buildpackage in it I suddenly lost Git information for that branch, the reason being dh_clean. Demonstration with a minimal example: ,---- [ demo ] | % git init | Initialized empty Git repository in /tmp/tmp.rDCKYGKXqx/.git/ | % echo init > foo | % git add foo | % git commit -m 'init' | [master (root-commit) 1179777] init | 1 file changed, 1 insertion(+) | create mode 100644 foo | % git checkout -b demo.orig | Switched to a new branch 'demo.orig' | % echo 2nd commit > foo | % git commit -a -m '2nd commit' | [demo.orig 65f5bb1] 2nd commit | 1 file changed, 1 insertion(+), 1 deletion(-) | % git log --oneline | 65f5bb1 2nd commit | 1179777 init | % mkdir debian | % touch debian/control | % dh_clean | dh_clean: No compatibility level specified in debian/compat | dh_clean: This package will soon FTBFS; time to fix it! | dh_clean: Compatibility levels before 5 are deprecated (level 1 in use) | % git log | fatal: bad default revision 'HEAD' | % git status | On branch demo.orig | | Initial commit | | Changes to be committed: | (use "git rm --cached ..." to unstage) | | new file: foo | | Untracked files: | (use "git add ..." to include in what will be committed) | | debian/ `---- The problem is in dh_clean which is getting rid of certain files, quoting dh_clean's source code: ,---- [ dh_clean ] | # Remove other temp files. | complex_doit("find . $find_options \\( \\( -type f -a \\ | \\( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \\ | -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \\ | -o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \\ | -o -name TAGS -o \\( -path '*/.deps/*' -a -name '*.P' \\) \\ | \\) -exec rm -f {} + \\) -o \\ | \\( -type d -a -name autom4te.cache -prune -exec rm -rf {} + \\) \\)"); `---- The situation before executing dh_clean is: ,---- [ git files ] | % find . -name \*.orig | ./.git/refs/heads/demo.orig | ./.git/logs/refs/heads/demo.orig | % `---- while *after* executing dh_clean all the demo.orig files in the git repos are gone. FTR: this of course doesn't affect just branch names ending with ".orig" but also all the other suffixes/file names listed in above's dh_clean code snippet. Other VCS might be affected as well, but I didn't check that. Command lines for easy reproduction: cd $(mktemp -d) git init echo init > foo git add foo git commit -m 'init' git checkout -b demo.orig echo 2nd commit > foo git commit -a -m '2nd commit' git log --oneline mkdir debian touch debian/control dh_clean Feel free to adjust severity as needed. regards, -mika- From mika at debian.org Sun Aug 31 06:18:58 2014 From: mika at debian.org (Michael Prokop) Date: Sun, 31 Aug 2014 08:18:58 +0200 Subject: [debhelper-devel] Bug#760033: debhelper: dh_clean removes Git refs information with certain suffixes like .orig, .rej, ... Message-ID: <2014-08-31T07-53-27@devnull.michael-prokop.at> Package: debhelper Version: 9.20140817 Severity: critical Justification: causes serious data loss I had a branch named "mika/678696.orig" in one of my Git repositories and when executing git-buildpackage in it I suddenly lost Git information for that branch, the reason being dh_clean. Demonstration with a minimal example: ,---- [ demo ] | % git init | Initialized empty Git repository in /tmp/tmp.rDCKYGKXqx/.git/ | % echo init > foo | % git add foo | % git commit -m 'init' | [master (root-commit) 1179777] init | 1 file changed, 1 insertion(+) | create mode 100644 foo | % git checkout -b demo.orig | Switched to a new branch 'demo.orig' | % echo 2nd commit > foo | % git commit -a -m '2nd commit' | [demo.orig 65f5bb1] 2nd commit | 1 file changed, 1 insertion(+), 1 deletion(-) | % git log --oneline | 65f5bb1 2nd commit | 1179777 init | % mkdir debian | % touch debian/control | % dh_clean | dh_clean: No compatibility level specified in debian/compat | dh_clean: This package will soon FTBFS; time to fix it! | dh_clean: Compatibility levels before 5 are deprecated (level 1 in use) | % git log | fatal: bad default revision 'HEAD' | % git status | On branch demo.orig | | Initial commit | | Changes to be committed: | (use "git rm --cached ..." to unstage) | | new file: foo | | Untracked files: | (use "git add ..." to include in what will be committed) | | debian/ `---- The problem is in dh_clean which is getting rid of certain files, quoting dh_clean's source code: ,---- [ dh_clean ] | # Remove other temp files. | complex_doit("find . $find_options \\( \\( -type f -a \\ | \\( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \\ | -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \\ | -o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \\ | -o -name TAGS -o \\( -path '*/.deps/*' -a -name '*.P' \\) \\ | \\) -exec rm -f {} + \\) -o \\ | \\( -type d -a -name autom4te.cache -prune -exec rm -rf {} + \\) \\)"); `---- The situation before executing dh_clean is: ,---- [ git files ] | % find . -name \*.orig | ./.git/refs/heads/demo.orig | ./.git/logs/refs/heads/demo.orig | % `---- while *after* executing dh_clean all the demo.orig files in the git repos are gone. FTR: this of course doesn't affect just branch names ending with ".orig" but also all the other suffixes/file names listed in above's dh_clean code snippet. Other VCS might be affected as well, but I didn't check that. Command lines for easy reproduction: cd $(mktemp -d) git init echo init > foo git add foo git commit -m 'init' git checkout -b demo.orig echo 2nd commit > foo git commit -a -m '2nd commit' git log --oneline mkdir debian touch debian/control dh_clean Feel free to adjust severity as needed. regards, -mika- From joeyh at debian.org Sun Aug 31 21:32:18 2014 From: joeyh at debian.org (Joey Hess) Date: Sun, 31 Aug 2014 14:32:18 -0700 Subject: [debhelper-devel] Bug#759895: Bug#759895: debhelper: please strip non-deterministic data from static libraries In-Reply-To: <20140830203913.GH18562@localhost.localdomain> References: <20140830203913.GH18562@localhost.localdomain> Message-ID: <20140831213218.GA32356@kitenet.net> J?r?my Bobbio wrote: > Currently, static libraries shipped in Debian package capture the time > when the package is built. As part of the ?reproducible builds? > project?[1], it would be great to have static libriaries normalized. > > The attached patch will make `dh_strip` replace non-deterministic data > in static libraries. The replacement data is the same as the one put by > `ar` from binutils when used with the `D` option (deterministic mode). I think this is awesome! However, I am uncomfortable putting this big block of code into debhelper. > +sub normalize_ar { ... > +} Could it be moved to a utility that could a) be maintained by someone else, perhaps in a package such as binutils and b) could be used by non-debhelper users inside and outside of debian. -- see shy jo -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 811 bytes Desc: Digital signature URL: From joeyh at debian.org Sun Aug 31 21:32:18 2014 From: joeyh at debian.org (Joey Hess) Date: Sun, 31 Aug 2014 14:32:18 -0700 Subject: [debhelper-devel] Bug#759895: Bug#759895: debhelper: please strip non-deterministic data from static libraries In-Reply-To: <20140830203913.GH18562@localhost.localdomain> References: <20140830203913.GH18562@localhost.localdomain> Message-ID: <20140831213218.GA32356@kitenet.net> J?r?my Bobbio wrote: > Currently, static libraries shipped in Debian package capture the time > when the package is built. As part of the ?reproducible builds? > project?[1], it would be great to have static libriaries normalized. > > The attached patch will make `dh_strip` replace non-deterministic data > in static libraries. The replacement data is the same as the one put by > `ar` from binutils when used with the `D` option (deterministic mode). I think this is awesome! However, I am uncomfortable putting this big block of code into debhelper. > +sub normalize_ar { ... > +} Could it be moved to a utility that could a) be maintained by someone else, perhaps in a package such as binutils and b) could be used by non-debhelper users inside and outside of debian. -- see shy jo -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 811 bytes Desc: Digital signature URL: From joeyh at debian.org Sun Aug 31 21:40:38 2014 From: joeyh at debian.org (Joey Hess) Date: Sun, 31 Aug 2014 14:40:38 -0700 Subject: [debhelper-devel] Bug#759886: Bug#759886: debhelper: please make mtimes of packaged files deterministic In-Reply-To: <20140830201549.GF18562@localhost.localdomain> References: <20140830201549.GF18562@localhost.localdomain> Message-ID: <20140831214038.GA405@kitenet.net> +1 Do you have a plan to get packages not using dh or cdbs to use this new command? I can think of 2 ways.. one is to add it to some existing command, perhaps renaming the command. I thought maybe dh_fixperms could be renamed to dh_fixmetadata. But, I think some will use dh_fixperms -X to exclude certian files from being fixed, and we would not want that to apply to mtime fixing. My other idea is to make dh_fixmtimes set something that a later command (eg, dh_builddeb) could use and warn if it was not run. -- see shy jo -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 811 bytes Desc: Digital signature URL: From joeyh at debian.org Sun Aug 31 21:40:38 2014 From: joeyh at debian.org (Joey Hess) Date: Sun, 31 Aug 2014 14:40:38 -0700 Subject: [debhelper-devel] Bug#759886: Bug#759886: debhelper: please make mtimes of packaged files deterministic In-Reply-To: <20140830201549.GF18562@localhost.localdomain> References: <20140830201549.GF18562@localhost.localdomain> Message-ID: <20140831214038.GA405@kitenet.net> +1 Do you have a plan to get packages not using dh or cdbs to use this new command? I can think of 2 ways.. one is to add it to some existing command, perhaps renaming the command. I thought maybe dh_fixperms could be renamed to dh_fixmetadata. But, I think some will use dh_fixperms -X to exclude certian files from being fixed, and we would not want that to apply to mtime fixing. My other idea is to make dh_fixmtimes set something that a later command (eg, dh_builddeb) could use and warn if it was not run. -- see shy jo -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 811 bytes Desc: Digital signature URL: From lunar at debian.org Sun Aug 31 22:12:40 2014 From: lunar at debian.org (=?UTF-8?Q?J=C3=A9r=C3=A9my?= Bobbio) Date: Sun, 31 Aug 2014 22:12:40 +0000 Subject: [debhelper-devel] Bug#759895: Bug#759895: debhelper: please strip non-deterministic data from static libraries In-Reply-To: <20140831213218.GA32356@kitenet.net> References: <20140830203913.GH18562@localhost.localdomain> <20140831213218.GA32356@kitenet.net> Message-ID: <20140831221240.GA5393@localhost.localdomain> Joey Hess: > J?r?my Bobbio wrote: > > Currently, static libraries shipped in Debian package capture the time > > when the package is built. As part of the ?reproducible builds? > > project?[1], it would be great to have static libriaries normalized. > > > > The attached patch will make `dh_strip` replace non-deterministic data > > in static libraries. The replacement data is the same as the one put by > > `ar` from binutils when used with the `D` option (deterministic mode). > > I think this is awesome! However, I am uncomfortable putting this big > block of code into debhelper. > > > +sub normalize_ar { > ... > > +} > > Could it be moved to a utility that could > a) be maintained by someone else, perhaps in a package such as binutils > and b) could be used by non-debhelper users inside and outside of > debian. Andrew Ayer has been working on a `dh_strip_nondeterminism` helper: http://anonscm.debian.org/cgit/reproducible/strip-nondeterminism.git/ We can move that chunk of code to it, alongside normalizers for gzip, zip, and jar files. But we were kinda hoping to get that helper as part of debhelper in order to not have to modify every packages to add a new Build-Depends. -- Lunar .''`. lunar at debian.org : :? : # apt-get install anarchism `. `'` `- -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: Digital signature URL: From lunar at debian.org Sun Aug 31 22:12:40 2014 From: lunar at debian.org (=?UTF-8?Q?J=C3=A9r=C3=A9my?= Bobbio) Date: Sun, 31 Aug 2014 22:12:40 +0000 Subject: [debhelper-devel] Bug#759895: Bug#759895: debhelper: please strip non-deterministic data from static libraries In-Reply-To: <20140831213218.GA32356@kitenet.net> References: <20140830203913.GH18562@localhost.localdomain> <20140831213218.GA32356@kitenet.net> Message-ID: <20140831221240.GA5393@localhost.localdomain> Joey Hess: > J?r?my Bobbio wrote: > > Currently, static libraries shipped in Debian package capture the time > > when the package is built. As part of the ?reproducible builds? > > project?[1], it would be great to have static libriaries normalized. > > > > The attached patch will make `dh_strip` replace non-deterministic data > > in static libraries. The replacement data is the same as the one put by > > `ar` from binutils when used with the `D` option (deterministic mode). > > I think this is awesome! However, I am uncomfortable putting this big > block of code into debhelper. > > > +sub normalize_ar { > ... > > +} > > Could it be moved to a utility that could > a) be maintained by someone else, perhaps in a package such as binutils > and b) could be used by non-debhelper users inside and outside of > debian. Andrew Ayer has been working on a `dh_strip_nondeterminism` helper: http://anonscm.debian.org/cgit/reproducible/strip-nondeterminism.git/ We can move that chunk of code to it, alongside normalizers for gzip, zip, and jar files. But we were kinda hoping to get that helper as part of debhelper in order to not have to modify every packages to add a new Build-Depends. -- Lunar .''`. lunar at debian.org : :? : # apt-get install anarchism `. `'` `- -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: Digital signature URL: From lunar at debian.org Sun Aug 31 22:18:48 2014 From: lunar at debian.org (=?UTF-8?Q?J=C3=A9r=C3=A9my?= Bobbio) Date: Sun, 31 Aug 2014 22:18:48 +0000 Subject: [debhelper-devel] Bug#759886: Bug#759886: debhelper: please make mtimes of packaged files deterministic In-Reply-To: <20140831214038.GA405@kitenet.net> References: <20140830201549.GF18562@localhost.localdomain> <20140831214038.GA405@kitenet.net> Message-ID: <20140831221848.GB5393@localhost.localdomain> Joey Hess: > Do you have a plan to get packages not using dh or cdbs to use this new > command? Its heart is a single find+xargs+touch command. I had in mind that packages not using dh or cdbs could have their own way on how to make the mtimes deterministic. Possibly by adding such a find command in their debian/rules at the right location, but there might be other solutions. > I can think of 2 ways.. one is to add it to some existing command, > perhaps renaming the command. I thought maybe dh_fixperms could be > renamed to dh_fixmetadata. But, I think some will use dh_fixperms -X to > exclude certian files from being fixed, and we would not want that to > apply to mtime fixing. dh_fixmtimes must be run right before building the .deb, or it's likely that some other command will change the newly set mtimes. dh_fixperms is currently run at an earlier step of the build process. > My other idea is to make dh_fixmtimes set something that a later command > (eg, dh_builddeb) could use and warn if it was not run. Maybe it should be integrated to dh_builddeb, then? -- Lunar .''`. lunar at debian.org : :? : # apt-get install anarchism `. `'` `- -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: Digital signature URL: From lunar at debian.org Sun Aug 31 22:18:48 2014 From: lunar at debian.org (=?UTF-8?Q?J=C3=A9r=C3=A9my?= Bobbio) Date: Sun, 31 Aug 2014 22:18:48 +0000 Subject: [debhelper-devel] Bug#759886: Bug#759886: debhelper: please make mtimes of packaged files deterministic In-Reply-To: <20140831214038.GA405@kitenet.net> References: <20140830201549.GF18562@localhost.localdomain> <20140831214038.GA405@kitenet.net> Message-ID: <20140831221848.GB5393@localhost.localdomain> Joey Hess: > Do you have a plan to get packages not using dh or cdbs to use this new > command? Its heart is a single find+xargs+touch command. I had in mind that packages not using dh or cdbs could have their own way on how to make the mtimes deterministic. Possibly by adding such a find command in their debian/rules at the right location, but there might be other solutions. > I can think of 2 ways.. one is to add it to some existing command, > perhaps renaming the command. I thought maybe dh_fixperms could be > renamed to dh_fixmetadata. But, I think some will use dh_fixperms -X to > exclude certian files from being fixed, and we would not want that to > apply to mtime fixing. dh_fixmtimes must be run right before building the .deb, or it's likely that some other command will change the newly set mtimes. dh_fixperms is currently run at an earlier step of the build process. > My other idea is to make dh_fixmtimes set something that a later command > (eg, dh_builddeb) could use and warn if it was not run. Maybe it should be integrated to dh_builddeb, then? -- Lunar .''`. lunar at debian.org : :? : # apt-get install anarchism `. `'` `- -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 801 bytes Desc: Digital signature URL: From joeyh at debian.org Sun Aug 31 22:36:05 2014 From: joeyh at debian.org (Joey Hess) Date: Sun, 31 Aug 2014 15:36:05 -0700 Subject: [debhelper-devel] Bug#759886: Bug#759886: debhelper: please make mtimes of packaged files deterministic In-Reply-To: <20140831221848.GB5393@localhost.localdomain> References: <20140830201549.GF18562@localhost.localdomain> <20140831214038.GA405@kitenet.net> <20140831221848.GB5393@localhost.localdomain> Message-ID: <20140831223605.GD405@kitenet.net> J?r?my Bobbio wrote: > Joey Hess: > > Do you have a plan to get packages not using dh or cdbs to use this new > > command? > > Its heart is a single find+xargs+touch command. I had in mind that > packages not using dh or cdbs could have their own way on how to make > the mtimes deterministic. Possibly by adding such a find command in > their debian/rules at the right location, but there might be other > solutions. I was talking about commands that do use debhelper, but list all the commands to run in debian/rules. > > My other idea is to make dh_fixmtimes set something that a later command > > (eg, dh_builddeb) could use and warn if it was not run. > > Maybe it should be integrated to dh_builddeb, then? I don't think it belongs in dh_builddeb directly. -- see shy jo -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 811 bytes Desc: Digital signature URL: From joeyh at debian.org Sun Aug 31 22:34:57 2014 From: joeyh at debian.org (Joey Hess) Date: Sun, 31 Aug 2014 15:34:57 -0700 Subject: [debhelper-devel] Bug#759895: Bug#759895: debhelper: please strip non-deterministic data from static libraries In-Reply-To: <20140831221240.GA5393@localhost.localdomain> References: <20140830203913.GH18562@localhost.localdomain> <20140831213218.GA32356@kitenet.net> <20140831221240.GA5393@localhost.localdomain> Message-ID: <20140831223457.GC405@kitenet.net> J?r?my Bobbio wrote: > Andrew Ayer has been working on a `dh_strip_nondeterminism` helper: > http://anonscm.debian.org/cgit/reproducible/strip-nondeterminism.git/ > > We can move that chunk of code to it, alongside normalizers for gzip, > zip, and jar files. > > But we were kinda hoping to get that helper as part of debhelper in > order to not have to modify every packages to add a new Build-Depends. Right.. I was suggesting a non-debhelper utility, which dh_strip could then call. -- see shy jo -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 811 bytes Desc: Digital signature URL: From joeyh at debian.org Sun Aug 31 22:36:05 2014 From: joeyh at debian.org (Joey Hess) Date: Sun, 31 Aug 2014 15:36:05 -0700 Subject: [debhelper-devel] Bug#759886: Bug#759886: debhelper: please make mtimes of packaged files deterministic In-Reply-To: <20140831221848.GB5393@localhost.localdomain> References: <20140830201549.GF18562@localhost.localdomain> <20140831214038.GA405@kitenet.net> <20140831221848.GB5393@localhost.localdomain> Message-ID: <20140831223605.GD405@kitenet.net> J?r?my Bobbio wrote: > Joey Hess: > > Do you have a plan to get packages not using dh or cdbs to use this new > > command? > > Its heart is a single find+xargs+touch command. I had in mind that > packages not using dh or cdbs could have their own way on how to make > the mtimes deterministic. Possibly by adding such a find command in > their debian/rules at the right location, but there might be other > solutions. I was talking about commands that do use debhelper, but list all the commands to run in debian/rules. > > My other idea is to make dh_fixmtimes set something that a later command > > (eg, dh_builddeb) could use and warn if it was not run. > > Maybe it should be integrated to dh_builddeb, then? I don't think it belongs in dh_builddeb directly. -- see shy jo -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 811 bytes Desc: Digital signature URL: From joeyh at debian.org Sun Aug 31 22:34:57 2014 From: joeyh at debian.org (Joey Hess) Date: Sun, 31 Aug 2014 15:34:57 -0700 Subject: [debhelper-devel] Bug#759895: Bug#759895: debhelper: please strip non-deterministic data from static libraries In-Reply-To: <20140831221240.GA5393@localhost.localdomain> References: <20140830203913.GH18562@localhost.localdomain> <20140831213218.GA32356@kitenet.net> <20140831221240.GA5393@localhost.localdomain> Message-ID: <20140831223457.GC405@kitenet.net> J?r?my Bobbio wrote: > Andrew Ayer has been working on a `dh_strip_nondeterminism` helper: > http://anonscm.debian.org/cgit/reproducible/strip-nondeterminism.git/ > > We can move that chunk of code to it, alongside normalizers for gzip, > zip, and jar files. > > But we were kinda hoping to get that helper as part of debhelper in > order to not have to modify every packages to add a new Build-Depends. Right.. I was suggesting a non-debhelper utility, which dh_strip could then call. -- see shy jo -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 811 bytes Desc: Digital signature URL: