summaryrefslogtreecommitdiff
path: root/README
blob: 3fd6bf60525ead0c99a1c212526597e54aa0fce9 (plain) (blame)
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
overview
--------

This is the source code for https://www.adelielinux.org/.

We make heavy use of Docker containers to render images and sources.


building
--------

To generate the 'html/' web root directory for upload to web server:

  $ make site


To generate the 'images/' directory containing generated images for
use elsewhere:

  $ make logo


installing
----------

It is anticipated that the 'html/' directory is served in-place
and that this repository resides on the web server, has all of the
required dependencies, and is updated periodically.

If this is not the case, please compress/transfer 'html/' to the
appropriate web server. You will need to perform updates manually.


themes
------

A ThemeForest theme called "Mono" by FlaTheme is used as a base.

2021-07-22 NOTICE:

  * The theme.css file must be handled carefully (see below).

  * The following changes have been made from original:

      $ grep -rl AAAAAA assets/ | while read k; do sed -i ${k} -e 's/AAAAAA/DDDDDD/g'; done
      $ grep -rl 7C7C7C assets/ | while read k; do sed -i ${k} -e 's/7C7C7C/333333/g'; done


scss preprocessor
-----------------

The base theme author "requires" use of a GUI-only SCSS preprocessor.
We don't care for this, so we circumvent it with some heavy lifting.

These steps are performed to render the real CSS files:

 1. Throw CSS into `src/*`.
 2. Ensure that there is a top-level `src/theme.scss` file with imports.
 3. Run `npm i` to install dependencies.
 4. Run `npm build` to build to `out/`.
 5. Profit.

Targets may be run with `npm run <target>`.

| Target           | Description             |
| ---------------- | ----------------------- |
| `prebuild`       | See `clean`             |
| `build`          | Compile SCSS to `out/`  |
| `list-supported` | List supported browsers |
| `clean`          | Clean output directory  |

Fonts are downloaded (cached) and provided in `out/fonts/*`.

Look at the script 'assets/css/compile.sh' for more information.

Two output products are generated using vanilla SASS and then a custom
Node.js project (leveraging PostCSS) called "adelie-css-compat":

  * theme.css
  * fonts/

The latter project adapts the rendered CSS for older browsers.


image generation
----------------

All images are derived from PSD files and/or template files. They are
rendered in a number of formats and dimensions for use with various
online and/or offline services.

Look at the script 'assets/images/polyguin.sh' for more information.

Currently the PSD source files do not contain history; this is due to
an oversight and will be corrected. Large originals may not be found
in this repository if their license prohibits unmodified distribution.


maintenance
-----------

It is recommended to rebase onto the latest available theme in case
any bugs have been fixed. As of writing, the latest version is:

    5.7.8

Once "support" expires, newer updates may not be available.

Please do not remove any images from the generator unless you are
absolutely sure that no external websites use or link to the image(s).


license
-------

Copyright 2023 The Adélie Linux Project

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an "AS
IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
express or implied. See the License for the specific language
governing permissions and limitations under the License.