The officially official Devuan Forum!

You are not logged in.

#1 2021-06-25 13:49:43

fsmithred
Administrator
Registered: 2016-11-25
Posts: 1,890  

quilt diff fails

I'm trying to make a quilt patch to correct (replace) a couple of files in clearlooks-phenix-cinnabar-theme, following this guide: https://wiki.debian.org/UsingQuilt
I've used that guide successfully on the deepsea theme, but this patch is failing. Here's my command history with relevant output:

### Clone the repo and checkout the working branch
git clone git@git.devuan.org:devuan/clearlooks-phenix-cinnabar-theme.git
cd clearlooks-phenix-cinnabar-theme/
git checkout suites/unstable

### apply existing patches (there's one active in the series file)
$ quilt push -a

Applying patch color-change
patching file gtk-2.0/gtkrc

Now at patch color-change

### Create new patch
$ quilt new top-left-active-fix

Patch top-left-active-fix is now on top

### Start making the changes 
$ quilt add xfwm4/top-left-active.xpm 
File xfwm4/top-left-active.xpm added to patch top-left-active-fix

$ cp ../top-left-active.xpm xfwm4/
$ quilt refresh
Refreshed patch top-left-active-fix

$ quilt add xfwm4/top-left-active.png 
File xfwm4/top-left-active.png added to patch top-left-active-fix

$ cp ../top-left-active.png xfwm4/
$ quilt refresh
Diff failed on file 'xfwm4/top-left-active.png', aborting

$ quilt add xfwm4/png/top-left-active.png 
File xfwm4/png/top-left-active.png added to patch top-left-active-fix

$ cp ../top-left-active.png xfwm4/png/
$ quilt refresh
Diff failed on file 'xfwm4/png/top-left-active.png', aborting

### Get rid of the failed patch and remove all the applied patches.
quilt delete top-left-active-fix
quilt pop -a

The .xpm file is a text file, and that works. The .png is a binary file, and I don't know if there's a different way to handle that. Other than that, I have no ideas about what's wrong. Suggestions are welcome.

Here's a link to the unstable branch, for reference: https://git.devuan.org/devuan/clearlook … s/unstable

Offline

#2 2021-06-26 00:07:29

ralph.ronnquist
Administrator
From: Clifton Hill, Victoria, AUS
Registered: 2016-11-30
Posts: 572  

Re: quilt diff fails

There's some additional notes about quilt for debian packages in man dpkg-source, line 440++. Esp:

Any change on a binary file is not representable in a diff and will thus  lead to a failure unless the maintainer deliberately decided to include that modified binary file in the debian tarball (by listing it in debian/source/include-binaries).  The build will also fail if it finds binary files in the debian sub-directory unless they have been whitelisted through debian/source/include-binaries.

Perhaps that means both that the relative pathname for png file (probably relative the directory containing the debian sub directory) must be mentioned in that included-binaries file, and then that the included-binaries file is maintained via quilt patching.
EDIT: or that the included-binaries file is just updated (without quilt-ing).

Offline

#3 2021-06-26 16:57:35

Head_on_a_Stick
Member
From: London
Registered: 2019-03-24
Posts: 1,654  
Website

Re: quilt diff fails

fsmithred wrote:

Suggestions are welcome.

Quilt was incorporated into dpkg some time ago so perhaps try the dpkg-source --commit abstraction:

https://www.debian.org/doc/manuals/debm … rce-commit


antifa ftw!

Offline

#4 2021-06-27 11:56:26

fsmithred
Administrator
Registered: 2016-11-25
Posts: 1,890  

Re: quilt diff fails

Thanks, guys. I added the .png files to include-binaries instead of putting them in the patch.  Just the .xpm is in the patch. Looks like it all works and builds now.

Offline

Board footer