Upgrading pagedjs: Difference between revisions

From Creative Crowds wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 18: Line 18:


== Method ==
== Method ==
install curl
switch the the www-data user, which owns the files


inside <code>/opt/octomode/static/</code>
inside <code>/opt/octomode/static/</code>

Revision as of 14:14, 21 February 2026

Up until today (February 21st, 2026), the version of pagedjs that Octomode depends on is 0.1.43.

From today, we will upgrade the version to the latest stable version, 0.4.3.

Octomode depends on two files that should be changed with the upgrade.

  • /opt/octomode/static/paged.polyfill.js (v0.1.43)
  • /opt/octomode/static/pagedjs.css (v0.2.0)

These should be upgraded to

  • /opt/octomode/static/paged.polyfill.js (v0.4.3)
  • /opt/octomode/static/interface.css (v0.4)

The file paged.polyfill.js can be overwritten, but as the CSS has a different filename, we should also update any templates that are being used by Octomode:

  • /opt/octomode/static/templates/pagedjs.html

Method

install curl switch the the www-data user, which owns the files

inside /opt/octomode/static/

$ curl https://app.unpkg.com/pagedjs@0.4.3/files/dist/paged.polyfill.js > paged.polyfill.js
$ curl https://gitlab.coko.foundation/pagedjs/interface-polyfill/-/raw/master/interface.css?ref_type=heads > interface.css

inside /opt/octomode/static/templates

$ sudo nano pagedjs.html

Replace the text "pagedjs.css" with "interface.css". Changing it from:

<!DOCTYPE html>
<html lang="{{ lang }}">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="{{ url_for('static', filename='paged.polyfill.js') }}" type="text/javascript"></script>
    <link href="{{ url_for('static', filename='pagedjs.css') }}" rel="stylesheet" type="text/css" media="screen">
    <!-- [LOCAL HACK] mb: added /octomode/ below to make the stylesheet link work again. -->
    <link href="/octomode/{{ name }}/stylesheet.css" rel="stylesheet" type="text/css" media="print">
    <title>{{ title }}</title>
</head>
<body>
    {{ pad_content }}
</body>
</html>

to

<!DOCTYPE html>
<html lang="{{ lang }}">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="{{ url_for('static', filename='paged.polyfill.js') }}" type="text/javascript"></script>
    <link href="{{ url_for('static', filename='interface.css') }}" rel="stylesheet" type="text/css" media="screen">
    <!-- [LOCAL HACK] mb: added /octomode/ below to make the stylesheet link work again. -->
    <link href="/octomode/{{ name }}/stylesheet.css" rel="stylesheet" type="text/css" media="print">
    <title>{{ title }}</title>
</head>
<body>
    {{ pad_content }}
</body>
</html>

TODO: upgrade pagedjs for wiki-to-print, which is a separate installation of pagedjs.