Mercurial Hosting > reactionary
changeset 1:da780d885325
more
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 07 Apr 2022 19:54:29 -0600 |
parents | c604a58600be |
children | a247572ccaac |
files | .hgignore src/existing.html.luan src/index.html.luan src/lib/Shared.luan src/mercurial.html.luan src/mercurial_hosting.html.luan src/needed.html.luan src/this.html.luan |
diffstat | 8 files changed, 172 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
diff -r c604a58600be -r da780d885325 .hgignore --- a/.hgignore Thu Apr 07 16:06:10 2022 -0600 +++ b/.hgignore Thu Apr 07 19:54:29 2022 -0600 @@ -2,3 +2,4 @@ err push.sh +mine/
diff -r c604a58600be -r da780d885325 src/existing.html.luan --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/existing.html.luan Thu Apr 07 19:54:29 2022 -0600 @@ -0,0 +1,32 @@ +local Luan = require "luan:Luan.luan" +local error = Luan.error +local Io = require "luan:Io.luan" +local Http = require "luan:http/Http.luan" +local Shared = require "site:/lib/Shared.luan" +local head = Shared.head or error() +local existing_header = Shared.existing_header or error() + + +return function() + Io.stdout = Http.response.text_writer() +%> +<!doctype html> +<html> + <head> +<% head() %> + <title>Existing Reactionary Software</title> + <head> + <body> +<% existing_header() %> + <div content> + <h1>Existing Reactionary Software</h1> + <ul links> + <li><a href="/mercurial.html">Mercurial</a></li> + <li><a href="http://www.luan.software/">Luan</a></li> + <li><a href="/this.html">This Website</a></li> + </ul> + </div> + </body> +</html> +<% +end
diff -r c604a58600be -r da780d885325 src/index.html.luan --- a/src/index.html.luan Thu Apr 07 16:06:10 2022 -0600 +++ b/src/index.html.luan Thu Apr 07 19:54:29 2022 -0600 @@ -31,6 +31,8 @@ <h3>Make software great again!</h3> <p>For programmers who hate modern software. Modern software is overcomplicated, bloated, unreliable, incomprehensible, pointlessly ideological, and mostly unusable. We like the values of older software: simplicity, reliability, and usability.</p> <ul links> + <li><a href="/existing.html">Existing Reactionary Software</a></li> + <li><a href="/needed.html">Needed Reactionary Software</a></li> <li><a href="/discussion.html">Discussion</a></li> </ul> </div>
diff -r c604a58600be -r da780d885325 src/lib/Shared.luan --- a/src/lib/Shared.luan Thu Apr 07 16:06:10 2022 -0600 +++ b/src/lib/Shared.luan Thu Apr 07 19:54:29 2022 -0600 @@ -1,5 +1,6 @@ local Luan = require "luan:Luan.luan" local error = Luan.error +local ipairs = Luan.ipairs or error() local Shared = {} @@ -13,12 +14,24 @@ <% end -function Shared.header() +local function header(crumbs) %> <div header> <a href="/">Reactionary Software</a> +<% for _, crumb in ipairs(crumbs or {}) do %> + / <%=crumb%> +<% end %> </div> <% end +Shared.header = header + +function Shared.existing_header() + header{[[<a href="/existing.html">Existing</a>]]} +end + +function Shared.needed_header() + header{[[<a href="/needed.html">Needed</a>]]} +end return Shared
diff -r c604a58600be -r da780d885325 src/mercurial.html.luan --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/mercurial.html.luan Thu Apr 07 19:54:29 2022 -0600 @@ -0,0 +1,35 @@ +local Luan = require "luan:Luan.luan" +local error = Luan.error +local Io = require "luan:Io.luan" +local Http = require "luan:http/Http.luan" +local Shared = require "site:/lib/Shared.luan" +local head = Shared.head or error() +local existing_header = Shared.existing_header or error() + + +return function() + Io.stdout = Http.response.text_writer() +%> +<!doctype html> +<html> + <head> +<% head() %> + <title>Reactionary Software - Mercurial</title> + <head> + <body> +<% existing_header() %> + <div content> + <h1>Mercurial</h1> + + <p><a href="https://git-scm.com/">Git</a> and <a href="https://www.mercurial-scm.org/">Mercurial</a> provide roughly the same functionality and were developed at around the same time (2005), yet Git is clearly horrible modern software while Mercurial is good reactionary software. So what is the difference? The difference is in the design which reflects completely different values. Git reflects modern values, so it is a disgusting bloated overcomplicated unreliable mess. Mercurial reflects reactionary (older) values, so it is simple, clean, and reliable. Naturally, modern programmers overwhelmingly prefer Git.</p> + + <p>I only played with Git briefly before I recognized it as an unacceptable horror, so I will refer to others to describe these horrors in detail - <a href="http://jordi.inversethought.com/blog/enough-git/">here</a>, <a href="http://jordi.inversethought.com/blog/on-gitology/">here</a>, and <a href="https://stevebennett.me/2012/02/24/10-things-i-hate-about-git/">here</a>. I then looked for an alternative and found Mercurial which is good. There may also be other good alternatives but I haven't researched this, so I am only posting about Mercurial.</p> + + <p>I listed Mercurial first in the list of <a href="/existing.html">existing reactionary software</a> for a reason. This is because the distinction between Git and Mercurial makes it trivial to distinguish between horrible modern software and good reactionary software. The simple rule is that <b>all software whose source code is in Git is horrible modern software</b>. This eliminates 99% of current open source software, so this saves an incredible amount of time for those of us who want good reactionary software. All good software will be in Mercurial or some other Git alternative.</p> + + <p>It should go without saying that anyone who is developing reactionary software should use Mercurial for source control. Unfortunately there are no good <a href="/mercurial_hosting.html">hosting solutions</a>. If you need hosting, I can add you to my hosting hack.</p> + </div> + </body> +</html> +<% +end
diff -r c604a58600be -r da780d885325 src/mercurial_hosting.html.luan --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/mercurial_hosting.html.luan Thu Apr 07 19:54:29 2022 -0600 @@ -0,0 +1,29 @@ +local Luan = require "luan:Luan.luan" +local error = Luan.error +local Io = require "luan:Io.luan" +local Http = require "luan:http/Http.luan" +local Shared = require "site:/lib/Shared.luan" +local head = Shared.head or error() +local needed_header = Shared.needed_header or error() + + +return function() + Io.stdout = Http.response.text_writer() +%> +<!doctype html> +<html> + <head> +<% head() %> + <title>Reactionary Software - Mercurial Hosting</title> + <head> + <body> +<% needed_header() %> + <div content> + <h1>Mercurial Hosting</h1> + + <p>Last I checked, there are no good <a href="/mercurial.html">Mercurial</a> hosting solutions available. So I use my own hack, for example for <a href="https://hg.luan.software/reactionary">this site</a>. But a good solution is needed. If you know of any good solutions, please let me know in a <a href="/discussion.html">discussion</a>. If there aren't any good solutions, then it would worthwhile to develop one.</p> + </div> + </body> +</html> +<% +end
diff -r c604a58600be -r da780d885325 src/needed.html.luan --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/needed.html.luan Thu Apr 07 19:54:29 2022 -0600 @@ -0,0 +1,30 @@ +local Luan = require "luan:Luan.luan" +local error = Luan.error +local Io = require "luan:Io.luan" +local Http = require "luan:http/Http.luan" +local Shared = require "site:/lib/Shared.luan" +local head = Shared.head or error() +local needed_header = Shared.needed_header or error() + + +return function() + Io.stdout = Http.response.text_writer() +%> +<!doctype html> +<html> + <head> +<% head() %> + <title>Needed Reactionary Software</title> + <head> + <body> +<% needed_header() %> + <div content> + <h1>Needed Reactionary Software</h1> + <ul links> + <li><a href="/mercurial_hosting.html">Mercurial Hosting</a></li> + </ul> + </div> + </body> +</html> +<% +end
diff -r c604a58600be -r da780d885325 src/this.html.luan --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/this.html.luan Thu Apr 07 19:54:29 2022 -0600 @@ -0,0 +1,29 @@ +local Luan = require "luan:Luan.luan" +local error = Luan.error +local Io = require "luan:Io.luan" +local Http = require "luan:http/Http.luan" +local Shared = require "site:/lib/Shared.luan" +local head = Shared.head or error() +local existing_header = Shared.existing_header or error() + + +return function() + Io.stdout = Http.response.text_writer() +%> +<!doctype html> +<html> + <head> +<% head() %> + <title>Reactionary Software - This Website</title> + <head> + <body> +<% existing_header() %> + <div content> + <h1>This Website</h1> + + <p>This website is a tiny example of reactionary software. The UI is clean and simple, not fashionable. View the HTML source in the browser. Unlike all modern websites, the HTML here is readable. Now look at <a href="https://hg.luan.software/reactionary">the source</a> which is in <a href="/mercurial.html">Mercurial</a>. And the code is written in <a href="http://www.luan.software/">Luan</a> which makes it simple.</p> + </div> + </body> +</html> +<% +end