Hi Dhavan,
Unfortunately the non-dfsg files have already been merged and pushed, so
a team member with group-level admin access will need to do a hard reset
of the pristine-tar, upstream, and master branches, and you'll need to
do the same on your local copy, and reimport using 'gbp import-orig
--uscan'. Imho this is the fastest, easiest, and most maintainable way
forward. To not lose your commits, you can do something like:
git checkout master (before the reset)
git branch master-non-free-backup
git reset --hard pre-upstream-import-commit
and then either run 'git cherry-pick commit' for each commit that you
need, or use magit to apply a series of commits in one go :-)
Reply follows inline:
Dhavan V <quark@codingquark.com> writes:
> Hello!
>
> Debian Stable has shipped with v1.0.2 of modus-themes, which had no
> licensing conflicts with Debian.
>
> Since then, upstream has been included in emacs28 requiring docs license
> to change to GFDL, which is incompatible with Debian because of GFDL
> Invariant sections[1].
>
> Because of this, we need to either “split” the package or not ship the
> docs at all. I would like to “split” the package into free and non-free
> parts. However, I do not know if “splitting” is the right terminology
> here, and would like to have some help in finding documentation /
> guidance as to how I should be doing this.
>
Sorry for the delay replying to this email, I rebooted for a kernel
upgrade and lost the WIP draft that replied to this email.
On IRC I just mentioned how gbp import-orig --uscan leverages
Files-Excluded (d/copyright); this method prevents the non-dfsg files
from being merged to the salsa repo. Currently documentation of
Files-Excluded only exists in uscan's man page, and the documentation is
incomplete.
The non-dfsg source shouldn't be maintained on Debian infrastructure.
Yes, you're using the correct terminology, assuming the future
src:modus-themes-non-dfsg-docs exclusively contains what was excluded
from src:modus-themes. There are lots of options on how to maintain
this second source package. One can use a d/rules Makefile-style target
to automate the exclusion of the source that is present in
src:modus-themes, or a custom script. Basically the solution is "tar
cJf modus-themes-non-dfsg-docs_$version.tar.xz docs", plus a mechanism to
get the correct $version from either the upstream tag or the current
changelog entry.
'hope this helps!
Nicholas
Attachment:
signature.asc
Description: PGP signature