summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2021-04-15 12:07:39 +0200
committerRicardo Wurmus <rekado@elephly.net>2021-04-15 12:08:26 +0200
commita07b193a7548cbc04d9822e11281cb9c9edfafc5 (patch)
treed685723f1819c2756c8d09dab721ab4de1989b9b
parentkickoff: Tweak wording about the mailing list. (diff)
free-software: Move "open source" aside to a footnote.
The extra markup and styling necessitates the conversion from markdown to sxml.
-rw-r--r--free-software.md21
-rw-r--r--free-software.sxml35
-rw-r--r--haunt.scm4
-rw-r--r--static/css/main.css44
4 files changed, 81 insertions, 23 deletions
diff --git a/free-software.md b/free-software.md
deleted file mode 100644
index 178740a..0000000
--- a/free-software.md
+++ /dev/null
@@ -1,21 +0,0 @@
1title: Free software
2author: The GNU Assembly
3---
4
5# What’s “free software”?
6
7The GNU Assembly produces _free software_, also referred to as “_libre_
8software”, “liberating software”, or “open source” — but that last one
9fails to convey the main idea, that the goal is freedom. Software
10is “free” if it _respects its user’s freedom_, namely the following four
11essential freedoms:
12
13 1. The freedom to run the program as the user wishes, for any purpose.
14 2. The freedom to study how the program works and to change it to suit
15 their needs.
16 3. The freedom to redistribute it.
17 4. The freedom to distribute copies of modified versions.
18
19These criteria were spelled out by Richard M. Stallman in the 1980s.
20The defense of the freedom of computer users is at the core of the
21[Social Contract](/en/documents/social-contract) of the GNU Assembly.
diff --git a/free-software.sxml b/free-software.sxml
new file mode 100644
index 0000000..e09afbc
--- /dev/null
+++ b/free-software.sxml
@@ -0,0 +1,35 @@
1`((title . "Free software")
2 (author . "The GNU Assembly")
3 (content
4 (h1 "What’s “free software”?")
5
6 (p "The GNU Assembly produces " (em "free software")
7 " — also referred to as “" (em "libre") " software”, “liberating
8software”, or "
9 (a (@ (aria-describedby "footnote-label")
10 (href "#open-source")) "“open source”")
11 ". "
12 "Software is “free” if it " (em "respects its user’s
13freedom") ", namely the following four essential freedoms:")
14
15 (ol
16 (li "The freedom to run the program as the user wishes, for any
17purpose.")
18 (li "The freedom to study how the program works and to change it
19to suit their needs.")
20 (li "The freedom to redistribute it.")
21 (li "The freedom to distribute copies of modified versions."))
22 (p "These criteria were spelled out by Richard M. Stallman in the
231980s. The defense of the freedom of computer users is at the core of
24the " (a (@ (href "/en/documents/social-contract")) "Social
25Contract") " of the GNU Assembly.")
26
27 (div
28 (@ (id "footnote-labels"))
29 (h2 "Footnotes")
30 (ol
31 (li (@ (id "open-source"))
32 "The term “open source” fails to convey the main idea: that
33the goal is freedom.")))))
34
35
diff --git a/haunt.scm b/haunt.scm
index bcf5b02..b808aeb 100644
--- a/haunt.scm
+++ b/haunt.scm
@@ -172,8 +172,8 @@ representation."
172 "roles.md") 172 "roles.md")
173 (markdown-page "/en/documents/governance/index.html" 173 (markdown-page "/en/documents/governance/index.html"
174 "governance.md") 174 "governance.md")
175 (markdown-page "/en/documents/free-software/index.html" 175 (sxml-page "/en/documents/free-software/index.html"
176 "free-software.md") 176 "free-software.sxml")
177 (markdown-page "/en/documents/code-of-conduct/index.html" 177 (markdown-page "/en/documents/code-of-conduct/index.html"
178 "code-of-conduct.md") 178 "code-of-conduct.md")
179 (markdown-page "/en/documents/social-contract/index.html" 179 (markdown-page "/en/documents/social-contract/index.html"
diff --git a/static/css/main.css b/static/css/main.css
index 6e5650d..c363b0b 100644
--- a/static/css/main.css
+++ b/static/css/main.css
@@ -329,6 +329,10 @@ audio, video, .full-width {
329 max-width: 100%; 329 max-width: 100%;
330} 330}
331 331
332article {
333 counter-reset: footnotes;
334}
335
332article ul { 336article ul {
333 padding-left: 0; 337 padding-left: 0;
334 list-style-type: none; 338 list-style-type: none;
@@ -430,5 +434,45 @@ ul.members li.person + li.person {
430 margin-left: 1em; 434 margin-left: 1em;
431} 435}
432 436
437a[aria-describedby="footnote-label"] {
438 counter-increment: footnotes;
439 text-decoration: none;
440 color: inherit;
441 cursor: default;
442 outline: none;
443 border: none;
444}
445
446a[aria-describedby="footnote-label"]::after {
447 content: counter(footnotes);
448 vertical-align: super;
449 font-size: 0.8em;
450 margin-left: 2px;
451 color: #118ab2;
452 cursor: pointer;
453}
454
455a[aria-describedby="footnote-label"]:focus::after {
456 outline: thin dotted;
457 outline-offset: 2px;
458}
459
460#footnote-labels {
461 font-size: small;
462 margin-top: 4em;
463 border-top: 1px dotted #aaa;
464 padding-top: 1em;
465}
466#footnote-labels ol {
467 margin: 0;
468 padding: 0;
469}
470#footnote-labels h2 {
471 display: none;
472}
473#footnote-labels :target {
474 background: yellow;
475}
476
433#footer-box a { color: #333333; border-width: 1px; } 477#footer-box a { color: #333333; border-width: 1px; }
434#footer-box a:visited { color: #333333; } 478#footer-box a:visited { color: #333333; }