aboutsummaryrefslogtreecommitdiff
path: root/src/hydrilla/proxy/self_doc/repositories.html.jinja
blob: 4cf6d2ced1a6200f595ef83ae347e8c7508e467e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
{#
SPDX-License-Identifier: GPL-3.0-or-later OR CC-BY-SA-4.0

Documentation page describing the concept of repositories in Haketilo.

This file is part of Hydrilla&Haketilo.

Copyright (C) 2022 Wojtek Kosior

Dual licensed under
* GNU General Public License v3.0 or later and
* Creative Commons Attribution Share Alike 4.0 International.

You can choose to use either of these licenses or both.


I, Wojtek Kosior, thereby promise not to sue for violation of this
file's licenses. Although I request that you do not make use of this
code in a proprietary work, I am not going to enforce this in court.
#}
{% extends "doc_base.html.jinja" %}

{% block title %} Repositories {% endblock %}

{% block main %}
  {{ big_heading('Repositories in Haketilo') }}

  {% call section() %}
    {% call paragraph() %}
      {{ doc_page_link('Packages', 'packages') }} used to alter sites' behavior
      can be obtained by users from Hydrilla repositories. The repositories to
      use can be configured from the
      {{ hkt_link('relevant Haketilo UI page', 'repos.repos') }}. When Haketilo
      is first run, it only has one entry on that page - the official Hydrilla
      repository with fixes for sites that normally rely on (often proprietary)
      JavaScript.
    {% endcall %}
  {% endcall %}

  {% call section() %}
    {{ medium_heading('Adding') }}

    {% call paragraph() %}
      Before experimenting with third-party repositories please bear in mind
      that a hostile Haketilo package can cause real harm.
      Scripts injected by Haketilo have access to data on the page, including
      cookies and passwords you may enter.
      Do make sure the repositories you are using are trustworthy.
    {% endcall %}

    {% call paragraph() %}
      On the {{ hkt_link('repository addition page', 'repos.add_repo') }} the
      user is expected to supply 2 pieces of information.
      The <span class="bold">URL</span> of the repository and its
      <span class="bold">name</span>.
      The URL is supposed to be provided by repository owner.
      Then name is only used locally and can be chosen by the user.
      Allowed are most visible ASCII characters, with possible spaces in-betwen.
      No 2 repositories can use the same name.
    {% endcall %}

    {% call paragraph() %}
      As of Haketilo version 3.0 the user does not need to provide any
      authentication data (e.g. private keys) because cryptographic signing of
      packages is not yet supported. This may change in the future.
    {% endcall %}
  {% endcall %}

  {% call section() %}
    {{ medium_heading('Removing') }}

    {% call paragraph() %}
      A repository can be deleted at any time. When this happens,
    {% endcall %}

    {% call unordered_list() %}
      {% call list_entry() %}
        its packages that were in use (e.g. were enabled) retain their state,
      {% endcall %}
      {% call list_entry() %}
        its packages that were installed but not in use become
        <span class="bold">orphans</span> and can be removed from the
        {{ hkt_link('settings page', 'home.home') }} and
      {% endcall %}
      {% call list_entry() %}
        its packages that were not installed are forgotten.
      {% endcall %}
    {% endcall %}

    {% call paragraph() %}
      A deleted repository remains viewable from the
      {{ hkt_link('repositories management page', 'repos.repos') }} for as long
      as some of its packages remain installed.
    {% endcall %}
  {% endcall %}

  {% call section() %}
    {{ medium_heading('Operating') }}

    {% call paragraph() %}
      Before repository's contents become viewable on the
      {{ hkt_link('packages listing page', 'items.packages') }}, it needs to be
      <span class="bold">refreshed</span>.
      As of Haketilo 3.0-beta1, this action needs to be triggered manually by
      the user from the configuration page of that repository.
      Subsequent refreshals are needed every time the user wants to pull package
      updates.
    {% endcall %}

    {% call paragraph() %}
      Repository's name and URL can also be changed from its configuration page.
      The same requirements for their format hold as when adding a new
      repository.
    {% endcall %}
  {% endcall %}

  {% call section() %}
    {{ medium_heading('Local items') }}

    {% call paragraph() %}
      When the users installs some additional packages without using a
      repository, these are considered <span class="bold">local packages</span>.
      A special "Local items" entry then appears on the
      {{ hkt_link('repositories management page', 'repos.repos') }}. Local
      packages that are not in use are automatically considered orhpans.
    {% endcall %}
  {% endcall %}
{% endblock %}