From 705eee27394709117668071fa475df471b34001b Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Wed, 14 May 2025 22:35:54 +0200 Subject: [PATCH] Update Debian install instructions --- docs/requirements.txt | 1 + docs/source/conf.py | 2 +- docs/source/int_overview.rst | 2 +- docs/source/int_started.rst | 103 +++++++++++++++++++++++++++----- docs/source/usage_breakdown.rst | 2 +- 5 files changed, 93 insertions(+), 17 deletions(-) diff --git a/docs/requirements.txt b/docs/requirements.txt index 4ccbc91e..767647e7 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,6 +1,7 @@ docutils>=0.17.1 pygments>=2.7 sphinx-book-theme +sphinx-copybutton sphinx-design sphinx-favicon sphinx-intl diff --git a/docs/source/conf.py b/docs/source/conf.py index 4791c0e4..b3d3d41f 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -40,7 +40,7 @@ os.environ["TZ"] = "Europe/Oslo" time.tzset() needs_sphinx = "5.0" -extensions = ["sphinx_design"] +extensions = ["sphinx_design", "sphinx_copybutton"] templates_path = ["_templates"] source_suffix = ".rst" master_doc = "index" diff --git a/docs/source/int_overview.rst b/docs/source/int_overview.rst index 96f5e410..7539fb1f 100644 --- a/docs/source/int_overview.rst +++ b/docs/source/int_overview.rst @@ -13,7 +13,7 @@ structure of your text. It collects a lot of information from your text and uses structure of it in various ways to help you get an overview of your writing. The chapters labelled "Recommended Reading" includes additional information on how the different -parts if the application work and what the features do. +parts of the application work and what the features do. The "Optional" and "Lookup" chapters contain additional information or lookup tables that are not essential for using the application. diff --git a/docs/source/int_started.rst b/docs/source/int_started.rst index fe2502ae..88c1aba3 100644 --- a/docs/source/int_started.rst +++ b/docs/source/int_started.rst @@ -72,28 +72,103 @@ Debian and Mint Since this is a pure Python package, the Launchpad PPA can in principle also be used on Debian or Mint. However, the above command will fail to add the signing key, as it is Ubuntu-specific. +Instead, do one of the following: -Instead, run the following commands to add the repository and key: +.. tab-set:: -.. code-block:: bash + .. tab-item:: Debian 13 (Trixie) and Later + :selected: - sudo gpg --no-default-keyring --keyring /usr/share/keyrings/novelwriter-ppa-keyring.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys F19F1FCE50043114 - echo "deb [signed-by=/usr/share/keyrings/novelwriter-ppa-keyring.gpg] http://ppa.launchpad.net/vkbo/novelwriter/ubuntu noble main" | sudo tee /etc/apt/sources.list.d/novelwriter.list + As of Debian 13 (Trixie) and other Debian derivatives, the keyring format has changed. + The following instructions use Sequoia to install the key in the correct format, and sets up + the source file in the new format. + + If you don't have Sequoia installed, first run: + + .. code-block:: bash + + sudo apt install sq + + Import the keyring: + + .. code-block:: bash + + sudo sq network keyserver --server hkps://keyserver.ubuntu.com search "F19F1FCE50043114" \ + --output /usr/share/keyrings/novelwriter-ppa-keyring.gpg --overwrite + + Add the source file: + + .. tab-set:: + + .. tab-item:: Releases + :selected: + + .. code-block:: bash + + sudo sh -c "cat > /etc/apt/sources.list.d/novelwriter.sources" << EOF + Types: deb + URIs: http://ppa.launchpad.net/vkbo/novelwriter/ubuntu/ + Suites: noble + Components: main + Signed-By: /usr/share/keyrings/novelwriter-ppa-keyring.gpg + EOF + + .. tab-item:: Pre-Releases + + .. code-block:: bash + + sudo sh -c "cat > /etc/apt/sources.list.d/novelwriter-pre.sources" << EOF + Types: deb + URIs: http://ppa.launchpad.net/vkbo/novelwriter-pre/ubuntu/ + Suites: noble + Components: main + Signed-By: /usr/share/keyrings/novelwriter-ppa-keyring.gpg + EOF + + .. tab-item:: Debian 12 (Bookworm) and Earlier + + For Debian 12 (Bookworm) and older, and equivalent derivatives, use the old keyring format + and apt sources list file format. + + Import the keyring: + + .. code-block:: bash + + sudo gpg --no-default-keyring --keyring /usr/share/keyrings/novelwriter-ppa-keyring.gpg \ + --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys F19F1FCE50043114 + + Add the source list: + + .. tab-set:: + + .. tab-item:: Releases + :selected: + + .. code-block:: bash + + echo "deb [signed-by=/usr/share/keyrings/novelwriter-ppa-keyring.gpg] http://ppa.launchpad.net/vkbo/novelwriter/ubuntu noble main" | sudo tee /etc/apt/sources.list.d/novelwriter.list + + .. tab-item:: Pre-Releases + + .. code-block:: bash + + echo "deb [signed-by=/usr/share/keyrings/novelwriter-ppa-keyring.gpg] http://ppa.launchpad.net/vkbo/novelwriter-pre/ubuntu noble main" | sudo tee /etc/apt/sources.list.d/novelwriter-pre.list + + .. tip:: + If you get an error message like ``gpg: failed to create temporary file`` when importing the key + from the Ubuntu keyserver, try creating the folder it fails on, and import the key again: + + .. code-block:: bash + + sudo mkdir -m 700 /root/.gnupg/ + +**Install novelWriter** Then run the update and install commands as for Ubuntu: .. code-block:: bash - sudo apt update - sudo apt install novelwriter - -.. tip:: - If you get an error message like ``gpg: failed to create temporary file`` when importing the key - from the Ubuntu keyserver, try creating the folder it fails on, and import the key again: - - .. code-block:: bash - - sudo mkdir /root/.gnupg/ + sudo apt update && sudo apt install novelwriter AppImage Releases diff --git a/docs/source/usage_breakdown.rst b/docs/source/usage_breakdown.rst index d4bc5fad..7645eda4 100644 --- a/docs/source/usage_breakdown.rst +++ b/docs/source/usage_breakdown.rst @@ -194,7 +194,7 @@ within those documents. The four heading levels, **Level 1** to **Level 4**, are treated as follows: * **Level 1** is used for the novel title, and for partitions. -* **Level 2** is used for chapter tiles. +* **Level 2** is used for chapter titles. * **Level 3** is used for scene titles -- optionally replaced by separators. * **Level 4** is for section titles within scenes, if such granularity is needed.