GNU bug report logs - #38616
emacs: fix odt export

Previous Next

Package: guix-patches;

Reported by: anothersms <at> gmail.com (Nicolò Balzarotti)

Date: Sat, 14 Dec 2019 23:46:01 UTC

Severity: normal

Done: Nicolò Balzarotti <anothersms <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: anothersms <at> gmail.com (Nicolò Balzarotti)
Subject: bug#38616: closed (Re: [bug#38616] emacs: fix odt export)
Date: Sun, 22 Dec 2019 09:35:01 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#38616: emacs: fix odt export

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 38616 <at> debbugs.gnu.org.

-- 
38616: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38616
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Nicolò Balzarotti <anothersms <at> gmail.com>
To: Jelle Licht <jlicht <at> fsfe.org>, 38616-done <at> debbugs.gnu.org
Subject: Re: [bug#38616] emacs: fix odt export
Date: Sun, 22 Dec 2019 10:34:13 +0100
Closing this since my commit has been merged upstream! [1]

(I read on debbugs that to close the issue I need to add -done after the
bug #, let's try)

[1] https://code.orgmode.org/bzg/org-mode/commit/6315e1e76087a013198bfc33f0ec6a444cf5e662

Jelle Licht <jlicht <at> fsfe.org> writes:

> Hello Nicholò,
>
> anothersms <at> gmail.com (Nicolò Balzarotti) writes:
>
>> Hello Guix!
>>
>> Neither on NixOS or in guix I've ever been able to export an org file to
>> otd. The error was
>> 'OpenDocument export failed: Buffer is read-only: #<killed buffer>'.
>>
>> I've seen some report of this error on the web, like:
>> - https://lists.gnu.org/archive/html/emacs-orgmode/2018-05/msg00545.html
>> - https://github.com/syl20bnr/spacemacs/issues/1482
>>
>> but also on our IRC:
>> - http://logs.guix.gnu.org/guix/2019-05-07.log
>> - http://logs.guix.gnu.org/guix/2019-07-25.log
>> but I was not able to find a fix for it.
>>
>> Today I checked the source and figured it out. The explanation, as
>> written in the patch, is the following
>>
>>> Files inside the guix store are read only. "styles.xml" is copied from the
>>> store (/share/emacs/26.3/etc/org/OrgOdtStyles.xml), so it's read only too.
>>> ox-odt needs this file, so if it's not writable it will fail. This patch
>>> adjust the permissions.
> Thanks for figuring this out! I've been using my local (terrible)
> workarounds for years to make this work.
>
>>
>> So, this patches fixes the permissions on the file.
>>
>> I've two questions:
>> 1. Is it fine to have a .patch, or should I add a phase where I fix the
>>    file? this seemed to be easier
>
> I can't really advise on the best way forward here, but if you do decide
> to go with the .patch route, you should probably also add your .patch
> file to `dist_patch_DATA' in gnu/local.mk.
>
>> 2. If the same error happens for other programs, might it make sense to
>>    "fake" rw permissions in the store (by using a virtual fs or
>>    something) so that files are copied as rw, but files in the store are
>>    still ro?
>
> IMHO, software shouldn't assume certain permissions are set, and instead
> check or make-it-so. Perhaps you could upstream your patch instead of
> embedding it into Guix?
>
> Furthermore, the same issue as the one your fixed here is also present
> in our `emacs-org' package. Do you think your approach would work there
> as well? If so, it might make sense to fix both emacs and emacs-org.
>
> Thanks!
> - Jelle

[Message part 3 (message/rfc822, inline)]
From: anothersms <at> gmail.com (Nicolò Balzarotti)
To: guix-patches <at> gnu.org
Subject: emacs: fix odt export
Date: Sun, 15 Dec 2019 00:45:09 +0100
[Message part 4 (text/plain, inline)]
Hello Guix!

Neither on NixOS or in guix I've ever been able to export an org file to
otd. The error was
'OpenDocument export failed: Buffer is read-only: #<killed buffer>'.

I've seen some report of this error on the web, like:
- https://lists.gnu.org/archive/html/emacs-orgmode/2018-05/msg00545.html
- https://github.com/syl20bnr/spacemacs/issues/1482

but also on our IRC:
- http://logs.guix.gnu.org/guix/2019-05-07.log
- http://logs.guix.gnu.org/guix/2019-07-25.log
but I was not able to find a fix for it.

Today I checked the source and figured it out. The explanation, as
written in the patch, is the following

> Files inside the guix store are read only. "styles.xml" is copied from the
> store (/share/emacs/26.3/etc/org/OrgOdtStyles.xml), so it's read only too.
> ox-odt needs this file, so if it's not writable it will fail. This patch
> adjust the permissions.

So, this patches fixes the permissions on the file.

I've two questions:
1. Is it fine to have a .patch, or should I add a phase where I fix the
   file? this seemed to be easier
2. If the same error happens for other programs, might it make sense to
   "fake" rw permissions in the store (by using a virtual fs or
   something) so that files are copied as rw, but files in the store are
   still ro?

Thanks!

Nicolò

[0001-gnu-packages-emascs.scm-emacs-patches-Fix-odt-export.patch (text/x-patch, attachment)]

This bug report was last modified 5 years and 156 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.