You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Error opening file /tmp/xreader-33417/Las_profecias_de_Nostradamus-Nostradamus.epubFNR2I3/Siglo%201.xhtml: No such file or directory #698
Error opening file /tmp/xreader-33417/Las_profecias_de_Nostradamus-Nostradamus.epubFNR2I3/Siglo%201.xhtml: No such file or directory
The file is called "Siglo 1.html" within the epub, although in the content.opf file it appears as "media-type="application/xhtml+xml"/>", perhaps the media-type is incorrect and should be different, or is xreader misinterpreting it?
However, Calibre's reader reads the epub file perfectly.
I tried reproducing your issue and had the same problem. The reason for this problem is the following:
In the manifest tag of the content.opf file are items with the ids "Siglo_1.html" and "Siglo_2.html", which contain the content for the third and fourth page. The href attribute both contain an escaped space character (%20), which is required for it to be a valid uri, f.e. href="Siglo%201.html". The problem is, that currently escaped characters are not unescaped after reading them from the content.opf file and thus, as we can see in the error message, xreader tries to open the file at .../Siglo%201.xhtml. This file does not exist, because the file name is actually .../Siglo 1.xhtml.
Proposal for solving the problem
A quick fix for me was adding the following line in epub-document.c, which uses the function g_uri_unescape_string() from GLib:
Maybe there is also a general better way to transform the href links to file path, because the current implementation seems a little strange to me, because the uri provided by href is interpreted as a relative path and later gets transformed from filename to uri again. I have no experience with GLib, but maybe there is a cleaner way for this.
Activity
casual-coffee commentedon Jun 4, 2026
I tried reproducing your issue and had the same problem. The reason for this problem is the following:
In the
manifesttag of thecontent.opffile are items with the ids "Siglo_1.html" and "Siglo_2.html", which contain the content for the third and fourth page. Thehrefattribute both contain an escaped space character (%20), which is required for it to be a valid uri, f.e.href="Siglo%201.html". The problem is, that currently escaped characters are not unescaped after reading them from thecontent.opffile and thus, as we can see in the error message, xreader tries to open the file at.../Siglo%201.xhtml. This file does not exist, because the file name is actually.../Siglo 1.xhtml.Proposal for solving the problem
A quick fix for me was adding the following line in
epub-document.c, which uses the functiong_uri_unescape_string()from GLib:Maybe there is also a general better way to transform the href links to file path, because the current implementation seems a little strange to me, because the uri provided by href is interpreted as a relative path and later gets transformed from filename to uri again. I have no experience with GLib, but maybe there is a cleaner way for this.
alfema-esp commentedon Jun 6, 2026
@casual-coffee, thanks for your contribution, now we wait for them to accept your solution and update xreader in the repositories.
clefebvre commentedon Sep 4, 2026
EPUB support was removed from Xreader and reimplemented in Xepub: https://github.com/xapp-project/xepub.