On 07/05/2026 15:29, Juan wrote:
El jueves, 7 de mayo de 2026 a las 14:43, Nicolas Peugnet <[email protected]> escribió:So, another idea, if I understand correctly, you only want to keep the "siso" directory and the "LICENSE" file. How about using the Files-Excluded and Files-Included fields like so to only keep these files [1]:Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Files-Excluded: * Files-Included: LICENSE siso [1] https://manpages.debian.org/testing/devscripts/mk-origtargz.1.en.htmlThanks Nicolas! I added debian/scripts/repack-siso.sh for the repack and documented it in debian/README.source. Is that acceptable?
IMO it is better if uscan downloads the tarball itself, this makes it very easy for someone to pick up the package if it uses the expected workflow.
The siso tar we download contains only siso, so Files-Excluded wouldn't apply
Ok, good find about the tarball that only contains the siso, directory, in this case, I would use this kind of watch file, which directly does the same thing as your script, but with standard Debian tooling (without the LICENSE file part, more on that later):
Version: 5 Source: https://chromium.googlesource.com/build/+refs Matching-Pattern: \+/refs/tags/siso/@ANY_VERSION@ Download-Url-Mangle: s/\+/+archive/;s/$/\/siso.tar.gz/ Filename-Mangle: s/.*?(@ANY_VERSION@)/@PACKAGE@-$1.tar.gz/ Uversion-Mangle: autoTo explain a bit what it does, the source is now an HTML page instead of the git directory, uscan is able to parse the HTML and only searches Matching-Pattern in <a href="">. As the link does not directly point to the .tar.gz, we have to mangle it using Download-Url-Mangle. Because ogf that, we have to fix the name of the downloaded file, using Filename-Mangle. The Dversion-Mangle and Repack-Suffix have been removed as we do not repack anything anymore, and Uversion-Mangle is left as auto just in case upstream makes pre-releases.
Another possibility, that is a bit simpler IMO is the one that I suggested before:
diff --git a/debian/copyright b/debian/copyright index 110bdf3..30cefbd 100644 --- a/debian/copyright +++ b/debian/copyright@@ -5,6 +5,10 @@ Source: https://chromium.googlesource.com/build/+refs/tags/siso/
Comment: This package partially vendors Go dependencies in debian/vendor/ (only modules not packaged in Debian) and includes third-party npm packages in third_party/ for the built-in web UI. +Files-Excluded: * +Files-Included: + LICENSE + siso Files: * Copyright: 2023-2026 The Chromium Authors diff --git a/debian/watch b/debian/watch index f4b0c07..c199976 100644 --- a/debian/watch +++ b/debian/watch @@ -1,8 +1,7 @@ Version: 5 Mode: git Source: https://chromium.googlesource.com/build -Matching-Pattern: refs/tags/siso/v@ANY_VERSION@ -Dversionmangle: s/\+ds\d*$//-Uversionmangle: s/(\d)[_\.\-\+]?(RC|rc|pre|dev|beta|alpha)[.]?(\d*)$/$1~$2$3/
-Pgp-Mode: none -Git-Mode: shallow +Matching-Pattern: refs/tags/siso/@ANY_VERSION@ +Dversion-Mangle: auto +Uversion-Mangle: auto +Repack-Suffix: +ds This gives us the following tar: $ tar --exclude="*/*/*/*" --list -f ../siso_1.5.12+ds.orig.tar.xz siso-1.5.12/ siso-1.5.12/LICENSE siso-1.5.12/siso/ siso-1.5.12/siso/.gitignore siso-1.5.12/siso/README.md siso-1.5.12/siso/auth/ siso-1.5.12/siso/build/ siso-1.5.12/siso/docs/ siso-1.5.12/siso/execute/ siso-1.5.12/siso/go.mod siso-1.5.12/siso/go.sum siso-1.5.12/siso/hashfs/ siso-1.5.12/siso/main.go siso-1.5.12/siso/navbar.md siso-1.5.12/siso/o11y/ siso-1.5.12/siso/reapi/ siso-1.5.12/siso/runtimex/ siso-1.5.12/siso/scandeps/ siso-1.5.12/siso/scripts/ siso-1.5.12/siso/signals/ siso-1.5.12/siso/subcmd/ siso-1.5.12/siso/sync/ siso-1.5.12/siso/third_party/ siso-1.5.12/siso/toolsupport/ siso-1.5.12/siso/ui/ siso-1.5.12/siso/version/ siso-1.5.12/siso/webui/It has the disadvantage of having to repack the tarball though, which can be a pain when trying to donwload specific versions. The siso project will be in a subdirectory, compared to the root currently, but this shouldn't be an issue for dh-golang, and everything should (hopefully) work as before.
You can check everything that happens using "uscan --debug --download-current-version".
IMO, in the first case, you don't have to add the LICENSE file inside yourself, as it is the tarball provided upstream. As you did add the licensing information in debian/copyright and as that file will be installed alongside the binary, the requirement will be fulfilled.
I also fixed the watch file format, in case you want to have a look.
Nice, I find the version 5 is a lot nicer to use :) -- Nicolas Peugnet
OpenPGP_signature.asc
Description: OpenPGP digital signature
