changeset 27:404eb7e57fe6

Standardize things for Linux packaging.
author David Barts <n5jrn@me.com>
date Fri, 25 Dec 2020 18:58:45 -0800
parents 9bf3d8de6904
children c310ec097194
files Building.html Building.rst Makefile.docs Readme.html Readme.rst
diffstat 5 files changed, 102 insertions(+), 51 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Building.html	Fri Dec 25 18:58:45 2020 -0800
@@ -0,0 +1,52 @@
+<!DOCTYPE html>
+<!-- Skeleton or template web page, in the standard style. -->
+<html>
+  <head>
+    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+    <title>Building ImagePrep</title>
+    <style>
+html { font-family: "TeX Gyre Schola", serif; }
+h1, h2, h3, h4, h5, h6 { font-family: "Avenir Next", sans-serif; }
+pre, code, kbd, samp { font-family: "Menlo", monospace; ; font-size: 85%; }
+    </style>
+  </head>
+  <body>
+    <h1>Building ImagePrep</h1>
+    <p>ImagePrep is a pure Java application. As such it is easy to build:</p>
+    <ol>
+      <li>Install prerequisites:</li>
+      <ol type="a">
+        <li><a href="https://ant.apache.org/">Apache Ant</a></li>
+        <li><a href="http://launch4j.sourceforge.net/">Launch4j</a>, if you are
+          building on Windows</li>
+        <li>Java JDK 1.8 or better (see notes below).</li>
+        <li><a href="https://kotlinlang.org/">Kotlin</a></li>
+      </ol>
+      <li>Type <code>ant clean</code> to be sure you’re starting with a clean
+        slate.</li>
+      <li>Use one of the following commands:</li>
+      <ol type="a">
+        <li><code>ant jar</code> — to build a “fat JAR” containing the
+          application (and the Kotlin runtime)</li>
+        <li><code>ant macapp</code> — to build a Macintosh application</li>
+        <li><code>ant deb</code> — to build a Debian package for the Gnome
+          desktop</li>
+        <li><code>ant winapp</code> — to build a Windows application (requires <a
+            href="http://launch4j.sourceforge.net/">Launch4j</a>)</li>
+      </ol>
+    </ol>
+    <h2>Which Version of Java to Use?</h2>
+    <p>In short, Java 1.8. Most systems don’t yet have OpenJDK 11 or greater
+      installed, so using a compiler newer than 1.8 is asking for trouble. All
+      code <em>should</em> build on OpenJDK 11 or greater, with the exception
+      of the OS-dependent code for the Macintosh (which will have to be recoded
+      to use the <code>java.awt.Desktop</code> class). The latter would be a
+      net win, as it is portable, and would spell the death of the only bit of
+      OS-dependent Kotlin code in this application.</p>
+    <p></p>
+    <ol>
+      <ol type="a">
+      </ol>
+    </ol>
+  </body>
+</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Building.rst	Fri Dec 25 18:58:45 2020 -0800
@@ -0,0 +1,36 @@
+[This file automatically generated by pandoc from 'Building.html'.]
+
+Building ImagePrep
+==================
+
+ImagePrep is a pure Java application. As such it is easy to build:
+
+Install prerequisites:
+
+a. `Apache Ant <https://ant.apache.org/>`__
+b. `Launch4j <http://launch4j.sourceforge.net/>`__, if you are building
+   on Windows
+c. Java JDK 1.8 or better (see notes below).
+d. `Kotlin <https://kotlinlang.org/>`__
+
+Type ``ant clean`` to be sure you’re starting with a clean slate.
+
+Use one of the following commands:
+
+a. ``ant jar`` — to build a “fat JAR” containing the application (and
+   the Kotlin runtime)
+b. ``ant macapp`` — to build a Macintosh application
+c. ``ant deb`` — to build a Debian package for the Gnome desktop
+d. ``ant winapp`` — to build a Windows application (requires
+   `Launch4j <http://launch4j.sourceforge.net/>`__)
+
+Which Version of Java to Use?
+-----------------------------
+
+In short, Java 1.8. Most systems don’t yet have OpenJDK 11 or greater
+installed, so using a compiler newer than 1.8 is asking for trouble. All
+code *should* build on OpenJDK 11 or greater, with the exception of the
+OS-dependent code for the Macintosh (which will have to be recoded to
+use the ``java.awt.Desktop`` class). The latter would be a net win, as
+it is portable, and would spell the death of the only bit of
+OS-dependent Kotlin code in this application.
--- a/Makefile.docs	Sun Dec 13 11:20:06 2020 -0800
+++ b/Makefile.docs	Fri Dec 25 18:58:45 2020 -0800
@@ -1,6 +1,6 @@
 .PHONY: clean
 
-all: Readme.rst Readme.pdf
+all: Readme.rst Readme.pdf Building.rst Building.pdf
 
 clean:
 	-rm *.rst *.pdf *.ps *.nrf
--- a/Readme.html	Sun Dec 13 11:20:06 2020 -0800
+++ b/Readme.html	Fri Dec 25 18:58:45 2020 -0800
@@ -11,55 +11,8 @@
   </head>
   <body>
     <h1>ImagePrep Read Me</h1>
-    <p>This is a simple program mainly created for my own benefit.</p>
-    <p>Because it is primarily for my own benefit, it does not build to a
-      “clickable” app. That is too much of a pain to implement.</p>
-    <p>Because I have code to crib, it does contain a help file. It’s pretty
-      rudimentary, however.</p>
-    <p>Because I have code to crib, it does run on a <code>.properties</code>
-      file, but because coding preferences dialogs is something of a pain, it
-      does not contain a preferences or settings dialog, even though there is
-      some code to crib for both. The <code>.</code><code>properties</code>
-      file must be edited by hand* (it will live in the normal place for such
-      files on the system being run under). If no such file exists, a default
-      one will be created. The only things in it will be the maximum dimension
-      to clamp to, where the output file goes by default, and maybe what the
-      output file’s name is by default (i.e. a name suffix).</p>
-    <p>* This program is <em>for my own benefit</em>, and <em>I</em> have no
-      problem editing text files, therefore this is reasonable.</p>
-    <p>Contrary to JpegWasher, which is designed for batch processing, this will
-      have more of a “document editor” style of design. Meaning, you open a
-      file, you edit it, you save it, you close it.</p>
-    <p>Upon opening a file, it will be auto-scaled to the specified maximum
-      dimension. This will default to the value in the preferences file, but the
-      user will be able to override it with a command-line argument.</p>
-    <p>Ah, the command-line. Because it’s not a full “clickable” app, it is
-      launched from the command line, and accepts arguments, much like the old
-      days of using X Windows. This is actually <em>more</em> user-friendly for
-      my purposes, because it ends up honoring the concept of the current
-      working directory. (Directory management is one area where GUI programs
-      fall short.)</p>
-    <p>The current working directory is the input files directory. Depending on
-      how the properties are configured, the output directory is either the
-      current working directory, or a specified output file directory. Both
-      directories act like a current working directory; the next time an input
-      or output dialog is brought up in a given session, it will be in the same
-      spot the previous dialog was when it was closed. All this makes it easy to
-      rapidly edit files in a directory of images downloaded from a camera,
-      without polluting that directory with the edited files.</p>
-    <p>At that point, the editing step begins. It is extremely simple and is
-      limited to rotation. Three types of rotation will be offered, 90°
-      clockwise, 180°, and 90° counterclockwise.</p>
-    <p>The user can rotate the file as many times as s/he wants. Sort of silly,
-      but sometimes people are tired and get clockwise and counterclockwise
-      confused, so might as well give ’em a chance to fix their mistakes. Plus,
-      it would take special effort <em>not</em> to allow this.</p>
-    <p>Then comes the closing and saving. They are one operation, because that
-      makes the program easier <em>for me</em> to use.</p>
-    <p>Ideally, I wouldn’t even puts around with making this a GUI app in the
-      first place. It’s for my own use, so the command line would be good
-      enough. The problem is rotation: it’s a hot mess. There’s really no way to
-      do it right save to show the image to a human and let him (me) decide
-      which way is up.</p>
+    <p>This is a simple program for preparing digital images to be shared on the
+      Internet.</p>
+    <p>More information is available <a href="https://notyouraveragetechie.com/ImagePrep.html">here</a>.</p>
   </body>
 </html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Readme.rst	Fri Dec 25 18:58:45 2020 -0800
@@ -0,0 +1,10 @@
+[This file automatically generated by pandoc from 'Readme.html'.]
+
+ImagePrep Read Me
+=================
+
+This is a simple program for preparing digital images to be shared on
+the Internet.
+
+More information is available
+`here <https://notyouraveragetechie.com/ImagePrep.html>`__.