Register Guidelines E-Books Today's Posts Search

Go Back   MobileRead Forums > E-Book Software > Calibre > Related Tools

Notices

Reply
 
Thread Tools Search this Thread
Old 06-19-2015, 11:38 AM   #31
eschwartz
Ex-Helpdesk Junkie
eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.
 
eschwartz's Avatar
 
Posts: 19,421
Karma: 85397180
Join Date: Nov 2012
Location: The Beaten Path, USA, Roundworld, This Side of Infinity
Device: Kindle Touch fw5.3.7 (Wifi only)
I thought all package managers handle uninstalling...

There is an official Arch guideline that users should make the choice to activate things or not, but I decided if one is installing my updater, one wants to use it.
Arch guidelines also say calibre should ship with bunded and modified libs stripped out a la debian.
Besides, I echoed a message -- good enough.
eschwartz is offline   Reply With Quote
Old 06-21-2015, 05:37 AM   #32
Lofwyr23
Poker of bits and books
Lofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameter
 
Posts: 70
Karma: 12662
Join Date: Sep 2013
Device: Kobo Glo HD, Tolino Vision 5
Quote:
Originally Posted by eschwartz View Post
I thought all package managers handle uninstalling...

There is an official Arch guideline that users should make the choice to activate things or not, but I decided if one is installing my updater, one wants to use it.
I haven't seen my sandbox "packaging" after installing, might'Ve just flown by, seeing as I normally have it confirming outright when I check contents beforehand.

Quote:
Arch guidelines also say calibre should ship with bunded and modified libs stripped out a la debian.
I can't say if it comes like that, haven'T used pacman for installing, stuck to your installer (What works, works, and considering calibre updates faster then manjaro does it's packages, they hang behind two or three releases at best).

Last edited by Lofwyr23; 06-21-2015 at 05:40 AM.
Lofwyr23 is offline   Reply With Quote
Old 06-21-2015, 12:26 PM   #33
eschwartz
Ex-Helpdesk Junkie
eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.
 
eschwartz's Avatar
 
Posts: 19,421
Karma: 85397180
Join Date: Nov 2012
Location: The Beaten Path, USA, Roundworld, This Side of Infinity
Device: Kindle Touch fw5.3.7 (Wifi only)
Quote:
Originally Posted by Lofwyr23 View Post
I haven't seen my sandbox "packaging" after installing, might'Ve just flown by, seeing as I normally have it confirming outright when I check contents beforehand.
Not sure what you mean, but AUR helpers use makepkg and install the resulting package, and usually clean up the *.pkg.tar.xz afterward.

Quote:
I can't say if it comes like that, haven'T used pacman for installing, stuck to your installer (What works, works, and considering calibre updates faster then manjaro does it's packages, they hang behind two or three releases at best).
Interesting, Arch itself doesn't lag but it appears unlike other Arch derivatives Manjaro doesn't use archlinux.org repos. (Others will add custom overriding repos, e.g. parabola has a blocklist and all their libre stuff but finally pulls packages directly from Arch.)


Anyway good to hear it works.
eschwartz is offline   Reply With Quote
Old 06-30-2015, 11:25 AM   #34
Lofwyr23
Poker of bits and books
Lofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameterLofwyr23 can solve quadratic equations while standing on his or her head reciting poetry in iambic pentameter
 
Posts: 70
Karma: 12662
Join Date: Sep 2013
Device: Kobo Glo HD, Tolino Vision 5
Quote:
Originally Posted by eschwartz View Post
unlike other Arch derivatives Manjaro doesn't use archlinux.org repos. (Others will add custom overriding repos, e.g. parabola has a blocklist and all their libre stuff but finally pulls packages directly from Arch.)
Manjaro claims to be binary compatible. Doesn't mean they're using the same repos... I need to look up the part of their history explaining that... -EDIT- Found it :LINK: - And another

Quote:
Originally Posted by eschwartz View Post
Anyway good to hear it works.
It does, taking aside that one gremlin from the major version move. And it does what it is supposed to with a zeal that is missing from a lot of software nowadays.

Last edited by Lofwyr23; 06-30-2015 at 11:29 AM.
Lofwyr23 is offline   Reply With Quote
Old 11-04-2016, 02:15 PM   #35
mcaron1234
Member
mcaron1234 began at the beginning.
 
Posts: 10
Karma: 10
Join Date: Sep 2009
Location: Washington
Device: Kindle Voyage
I am thinking of implementing your script on my Linux Mint 18 home server. I have setup calibre-server to run at startup with a systemd script:

Code:
[Unit]
Description=Calibre as a system service with webserver
After=network.target
AssertPathExists=/home/matt/mounts/ServerFolders/Books

[Service]
Type=forking
PIDFile=/var/run/calibre-server.pid
ExecStart=/usr/bin/calibre-server \
        --daemonize \
        --max-cover=1200x900 \
        --max-opds-items=30 \
        --max-opds-ungrouped-items=100 \
        --url-prefix /cops \
        --username=user \
        --password=password \
        --port=8080 \
        --pidfile=/var/run/calibre-server.pid \
        --with-library='/home/matt/mounts/ServerFolders/Books/Calibre Library Oden/'

[Install]
WantedBy=multi-user.target
Which runs at startup and is controlled with:
Code:
sudo systemctl [start|stop|restart|status] calibre@matt.service
Will your script work ok with this setup, ie will it be able to stop and start the server after it runs?
mcaron1234 is offline   Reply With Quote
Old 11-06-2016, 12:13 PM   #36
eschwartz
Ex-Helpdesk Junkie
eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.
 
eschwartz's Avatar
 
Posts: 19,421
Karma: 85397180
Join Date: Nov 2012
Location: The Beaten Path, USA, Roundworld, This Side of Infinity
Device: Kindle Touch fw5.3.7 (Wifi only)
Well, it will kill the server, yes. `killall` as root is good at that.
And your calibre@matt.service does not specify restarting on failure (or any kind of restarting at all), so it won't restart before the upgrade completes, in fact, you will have to restart it yourself.

Note that the only real reason to kill all calibre processes during an upgrade is to restart them with the new version of calibre, since Linux is perfectly capable of replacing the program files while it is still running.

...

I would try using the "Conflicts=" directive in your calibre-server service, to get it to stop when the upgrade service is running. (I haven't thought about this situation before. I haven't tested it and I am not sure how to make sure it restarts as well. I don't know whether the "Restart=always" directive would restart it when the Conflicting service ends.)

..

Aside: I use the following systemd template service to start the server.

Code:
[eschwartz@arch ~/git/calibre-installer]$  cat ~/.config/systemd/user/calibre-server@.service
[Unit]
Description=Main calibre server
After=network.target

[Service]
EnvironmentFile=/%h/.config/calibre/servers/%i.conf
ExecStart=/usr/bin/calibre-server \
    --port="${port}" \
    --with-library "${path}" \
    --restriction "${restriction}" \
    --user "${user}" \
    --pass "${pass}"

[Install]
WantedBy=default.target
It is run as a user service.

Note that calibre-server does not need to be `--daemonize`d. pidfile+daemonize was necessary for earlier init systems which unlike systemd didn't natively know how to track the lifetime of the executable.

Also note my use of EnvironmentFile to easily template different servers.

In ~/.config/calibre/servers/${server}.conf you can drop values for:

Code:
port=""
path=""
restriction=""
user=""
pass=""
eschwartz is offline   Reply With Quote
Old 07-24-2017, 01:13 PM   #37
maddhin
Member
maddhin began at the beginning.
 
Posts: 15
Karma: 10
Join Date: Jul 2017
Device: iPad
Is this script still alive and working on a Raspberry Pi, too?
maddhin is offline   Reply With Quote
Old 07-24-2017, 01:57 PM   #38
eschwartz
Ex-Helpdesk Junkie
eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.
 
eschwartz's Avatar
 
Posts: 19,421
Karma: 85397180
Join Date: Nov 2012
Location: The Beaten Path, USA, Roundworld, This Side of Infinity
Device: Kindle Touch fw5.3.7 (Wifi only)
Well, sure the script still works. But all it does is install the official prebuilt binaries. And there have never been prebuilt binaries for the raspberry pi.

I suggest you use https://archlinuxarm.org instead, as they provide an up-to-date ARM build of calibre that should work okay.

Well, at least Arch Linux makes it trivially easy to build your own if you would prefer something a little more recent than 3.0.0 (we're four minor versions ahead now), but even so that is much more recent than e.g. raspbian.

Last edited by eschwartz; 07-24-2017 at 02:00 PM.
eschwartz is offline   Reply With Quote
Old 08-01-2017, 12:01 AM   #39
timelord
Junior Member
timelord began at the beginning.
 
Posts: 4
Karma: 10
Join Date: Aug 2016
Location: Sydney, Australia
Device: Kobo Glo HD
The script at https://github.com/eli-schwartz/calibre-installer relies on this page to do the update check:
http://code.calibre-ebook.com/latest

But for the last week or so that page or site was sometimes down (404 error) and it still has an invalid certificate which causes exceptions. I've written a slightly altered script which uses Github's REST API to check the version, since github.com is less likely to go down than the above

Code:
## Downloads and installs the latest version of Calibre from the Calibre website if not already installed
    # From https://www.mobileread.com/forums/sh...93#post2691093 and https://github.com/eli-schwartz/calibre-installer and modifications by me to support the fact that the original site that had the latest Calibre version info is now offline as of July 2017
    LATESTCALIBREVERS=`curl --silent --max-time 10 https://api.github.com/repos/kovidgo...eleases/latest | jq --raw-output '.tag_name' | cut -c2-6 -`
    calibre-debug -c "from calibre.constants import numeric_version; raise SystemExit(int(numeric_version  < (tuple(map(int, '$LATESTCALIBREVERS'.split('.'))))))"
    UP_TO_DATE=$?

    if [ $UP_TO_DATE = 0 ]; then
            echo "Calibre is up-to-date"
    else
            killall --quiet calibre-server
            ORIGUMASK=`umask`
            umask 0022 # Calibre installer needs umask 0022
            python -c "import sys; py3 = sys.version_info[0] > 2; u = __import__('urllib.request' if py3 else 'urllib', fromlist=1); exec(u.urlopen('https://raw.githubusercontent.com/kovidgoyal/calibre/master/setup/linux-installer.py').read()); main(install_dir='/opt')"
            umask $ORIGUMASK # restore original umask value
    fi
timelord is offline   Reply With Quote
Old 08-03-2017, 12:21 AM   #40
eschwartz
Ex-Helpdesk Junkie
eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.
 
eschwartz's Avatar
 
Posts: 19,421
Karma: 85397180
Join Date: Nov 2012
Location: The Beaten Path, USA, Roundworld, This Side of Infinity
Device: Kindle Touch fw5.3.7 (Wifi only)
As I mentioned on Github, I don't see those 404's (and I don't see how an HTTP domain that doesn't redirect to https:// can possibly result in an SSL certificate error), but regardless I've decided to use calibre's internal update notifier logic for that check anyway for separate reasons. It's a bit cleaner in terms of nested logic, and it is also future-proof as long as calibre maintains the same API which seems reasonable.
Note that calibre's internal update notifier logic embeds the private SSL certificate for that subdomain.

Code:
from calibre.gui2.update import get_newest_version
get_newest_version() # returns a tuple of the version from http://code.calibre-ebook.com/latest
...

On a side note. I've started gpg-signing my commits and tags, as well as the release archive (deterministically regenerated locally). So in case you wanted to check the PGP signature of this script -- which, since it just uses linux-installer.py, downloads and installs calibre without checking the PGP signature of calibre that is in fact available for checking -- you can now do that.

Regarding which, my PGP key fingerprint is:
Code:
BD27 B07A 5EF4 5C2A DAF7  0E04 8481 8A68 19AF 4A9B
eschwartz is offline   Reply With Quote
Old 08-09-2017, 03:42 AM   #41
maddhin
Member
maddhin began at the beginning.
 
Posts: 15
Karma: 10
Join Date: Jul 2017
Device: iPad
While I agree that going with Arch for a Calibre-only server, just for those guys who are looking for a Raspbian workaround: https://www.raspberrypi.org/forums/v...9037&p=1086130

This is essentially changing the source list to "testing" and thus installing an newer (but potentially less stable) version than the 2.75 coming with Jessie. 3.4.0 seems in testing now.

Last edited by maddhin; 08-09-2017 at 03:47 AM.
maddhin is offline   Reply With Quote
Old 09-10-2017, 01:09 AM   #42
maddhin
Member
maddhin began at the beginning.
 
Posts: 15
Karma: 10
Join Date: Jul 2017
Device: iPad
Based on eschwartz recommendation, I actually installed Arch Linux on my Raspberry Pi now, ran the script but ended up with:

[root@syncpi bin]# calibre-upgrade.sh
Calibre is not installed, installing...

Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt'
2017-09-10 11:31:57 URL:https://raw.githubusercontent.com/ko...x-installer.py [27407/27407] -> "-" [1]
Installing to /opt/calibre
Downloading tarball signature securely...
Using previously downloaded calibre-3.7.0-i686.txz
Extracting files to /opt/calibre ...
Extracting application files...
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "<string>", line 726, in main
File "<string>", line 687, in run_installer
File "/usr/lib/python3.6/subprocess.py", line 267, in call
with Popen(*popenargs, **kwargs) as p:
File "/usr/lib/python3.6/subprocess.py", line 707, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1333, in _execute_child
raise child_exception_type(errno_num, err_msg)
OSError: [Errno 8] Exec format error

I don't know much about Linux but it looks like it tries to install a i686 and not arm version.

I'm a bit confused now: how to install Calibre on a RPI w/ arch linux?

If I interpret the discussion here correctly, I CANNOT use the script but should install the "normal" AUR package (not the installer AUR package)?

---

EDIT / follow up:

When I try to install the AUR package I get:

[alarm@syncpi calibre-git]$ makepkg -si
==> ERROR: calibre-git is not available for the 'armv7h' architecture.

==> ERROR: An unknown error has occurred. Exiting...

Now what?

Last edited by maddhin; 09-10-2017 at 01:28 AM.
maddhin is offline   Reply With Quote
Old 09-10-2017, 01:47 AM   #43
eschwartz
Ex-Helpdesk Junkie
eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.
 
eschwartz's Avatar
 
Posts: 19,421
Karma: 85397180
Join Date: Nov 2012
Location: The Beaten Path, USA, Roundworld, This Side of Infinity
Device: Kindle Touch fw5.3.7 (Wifi only)
You have two options:
  1. Install calibre from the official Arch Linux ARM repositories, via
    Code:
    pacman -S calibre
  2. Install calibre-git from the AUR, since you are on a PI which is not standard i686/x86_64 desktop arches but rather armv7h you will usually have to run
    Code:
    makepkg -si --ignorearch
    As I do not test the armv7h build myself, I am unwilling to commit to adding that as a supported arch in the PKGBUILD, but using --ignorearch is pretty common for PI users to install AUR packages that probably compile okay on ARM architectures.
eschwartz is offline   Reply With Quote
Old 02-08-2022, 07:59 PM   #44
dunhill
Guru
dunhill ought to be getting tired of karma fortunes by now.dunhill ought to be getting tired of karma fortunes by now.dunhill ought to be getting tired of karma fortunes by now.dunhill ought to be getting tired of karma fortunes by now.dunhill ought to be getting tired of karma fortunes by now.dunhill ought to be getting tired of karma fortunes by now.dunhill ought to be getting tired of karma fortunes by now.dunhill ought to be getting tired of karma fortunes by now.dunhill ought to be getting tired of karma fortunes by now.dunhill ought to be getting tired of karma fortunes by now.dunhill ought to be getting tired of karma fortunes by now.
 
dunhill's Avatar
 
Posts: 781
Karma: 340954
Join Date: Sep 2017
Location: Argentina
Device: moon+ reader, kindle paperwhite
Eschwartz I know it's an old thread but I've tested the script and it works fine on an EndeavourOS distribution, but it gives me an error on linux mint 20.02

walter@walter-SVS15117FLB:~$ sudo calibre-upgrade.sh
[sudo] contraseña para walter:
Traceback (most recent call last):
File "runpy.py", line 194, in _run_module_as_main
File "runpy.py", line 87, in _run_code
File "site.py", line 45, in <module>
File "site.py", line 41, in main
File "calibre/debug.py", line 272, in main
File "<string>", line 1, in <module>
AttributeError: module 'urllib' has no attribute 'urlopen'
Calibre is out-of-date. Upgrading...


QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-walter'
No running calibre servers.


/usr/bin/calibre-upgrade.sh: línea 40: python: orden no encontrada
No se puede escribir a “-” (Conseguido).
walter@walter-SVS15117FLB:~$
Attached Thumbnails
Click image for larger version

Name:	2.png
Views:	407
Size:	440.0 KB
ID:	192226   Click image for larger version

Name:	1.png
Views:	363
Size:	157.0 KB
ID:	192227  
dunhill is offline   Reply With Quote
Reply

Tags
autoupdate, calibre, linux, systemd


Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Fully automatic Calibre autoupate solution (Windows) Tscherno Related Tools 20 12-25-2021 07:55 PM
Solution: Calibre AutoUpdater [Auto-Updater] megamaniac Calibre 6 08-02-2013 10:47 PM
Linux installer question opitzs Calibre 2 11-09-2011 08:20 AM
Either a userbug or a problem with the generic Linux binary installer. Ingrid Calibre 11 07-16-2008 04:26 AM


All times are GMT -4. The time now is 02:45 PM.


MobileRead.com is a privately owned, operated and funded community.