diff options
-rw-r--r-- | devel/requirements/1_introduction.xml | 23 | ||||
-rw-r--r-- | devel/requirements/2_description.xml | 85 |
2 files changed, 104 insertions, 4 deletions
diff --git a/devel/requirements/1_introduction.xml b/devel/requirements/1_introduction.xml index 59e6585..474fa95 100644 --- a/devel/requirements/1_introduction.xml +++ b/devel/requirements/1_introduction.xml @@ -25,7 +25,28 @@ <author><surname>Wilcox et al.</surname></author> (2019), Project Horizon: Vision. </citetitle> - On-line reference: <ulink url="https://www.adelielinux.org/horizon-vision/">on the World Wide Web at https://www.adelielinux.org/horizon-vision/</ulink>, or in the Horizon Git repository at <filename class="directory">devel/vision/</filename>. + On-line reference: <ulink url="https://www.adelielinux.org/horizon-vision/">on the World Wide Web at https://www.adelielinux.org/horizon-vision/</ulink>, or in the Horizon Git repository at <filename class="directory">devel/vision/</filename>. + </para></listitem> + <listitem id="REF-2" xreflabel="Platform Group Documentation, 2019, Adélie Linux"><para> + <citetitle pubwork="wiki"> + <author><othername>Adélie Linux Platform Group</othername></author> (2019), + Platform Group Documentation. + </citetitle> + On-line reference: <ulink url="https://wiki.adelielinux.org/wiki/Project:Platform_Group">on the World Wide Web at https://wiki.adelielinux.org/wiki/Project:Platform_Group</ulink>. + </para></listitem> + <listitem id="REF-3" xreflabel="crypt(3), 2011, FreeBSD"><para> + <citetitle pubwork="refentry"> + <author><othername>FreeBSD</othername></author> (2011), + crypt(3). + </citetitle> + On-line reference: <ulink url="https://www.freebsd.org/cgi/man.cgi?query=crypt&sektion=3&manpath=FreeBSD+9.0-RELEASE">on the World Wide Web at https://www.freebsd.org/cgi/man.cgi</ulink>, or on most Linux or BSD computers by running <command>man 3 crypt</command>. + </para></listitem> + <listitem id="REF-4" xreflabel="Programming Languages, 2019, Wilcox"><para> + <citetitle pubwork="wiki"> + <author><surname>Wilcox</surname></author> (2019), + Programming Languages supported by Adélie Linux. + </citetitle> + On-line reference: <ulink url="https://code.foxkit.us/adelie/packages/wikis/Programming-Languages">on the World Wide Web at https://code.foxkit.us/adelie/packages/wikis/Programming-Languages</ulink>. </para></listitem> </orderedlist> </section> diff --git a/devel/requirements/2_description.xml b/devel/requirements/2_description.xml index 9e38ed7..9c441c6 100644 --- a/devel/requirements/2_description.xml +++ b/devel/requirements/2_description.xml @@ -10,14 +10,70 @@ <section id="users"> <title>User Classes and Characteristics</title> <para>The identified user classes are defined in <citetitle pubwork="section"><xref linkend="REF-1"/> section 1.4</citetitle>. A summary of these classes is included below.</para> + <table frame="all"> + <title>User classes for release 1.0 of Project Horizon</title> + <tgroup cols="2" align="left" colsep="1" rowsep="1"> + <thead> + <row> + <entry>User Class</entry> + <entry>Description</entry> + </row> + </thead> + <tbody> + <row> + <entry>The Beginner "Charlie" (favoured)</entry> + <entry>This class of users has never used Linux before, but has used another operating system on their computer. + Users of this class will need documentation that contains clear descriptions of what their option selection will cause to happen. + Users of this class typically will want to keep their existing operating system while installing Adélie Linux to a second partition or disk.</entry> + </row> + <row> + <entry>The Enthusiast "Dakota" (favoured)</entry> + <entry>This class of users has experience with other Linux distributions, and wishes to install Adélie Linux. + Users of this class will want to feel in control of their computer and the system being installed to it. + Users of this class will use the majority of the features denoted as "advanced" in this requirements specification.</entry> + </row> + <row> + <entry>The Administrator "Jamie"</entry> + <entry>This class of users is interested in using HorizonScript to automate installation of Adélie Linux to one or more computers. + Users of this class may or may not use the Horizon UI to create the HorizonScript.</entry> + </row> + <row> + <entry>The Developer "River"</entry> + <entry>This class of users has significant Linux experience and wishes to install Adélie Linux on more "esoteric" hardware, such as a BeagleBone Black or Pentium III.</entry> + </row> + </tbody> + </tgroup> + </table> </section> <section id="environment"> <title>Operating Environment</title> - <para/> + <formalpara id="OE-1"> + <title>OE-1</title> + <para>Project Horizon shall run on any computer that is supported by the Easy Kernel and is using a Tier 1 supported CPU architecture as defined at <xref linkend="REF-2"/>.</para> + </formalpara> + <formalpara id="OE-2"> + <title>OE-2</title> + <para>Horzon UI shall run under the X11 display server with a screen resolution no smaller than 800x600.</para> + </formalpara> </section> <section id="constraints"> <title>Implementation Constraints</title> - <para/> + <formalpara id="IC-1"> + <title>IC-1</title> + <para>Project Horizon code written in C-based languages shall conform to the Adélie Linux code style <!-- TBD TODO add xref -->.</para> + </formalpara> + <formalpara id="IC-2"> + <title>IC-2</title> + <para>Horizon UI shall be written in C++ using the Qt widget toolkit.</para> + </formalpara> + <formalpara id="IC-3"> + <title>IC-3</title> + <para>The system shall use the Modular Crypt Format as described in <xref linkend="REF-3"/> and as implemented in the musl C library to encrypt passwords with the SHA-512 algorithm.</para> + </formalpara> + <formalpara id="IC-4"> + <title>IC-4</title> + <para>Horizon Runner shall be written in a programming language that is present in the System repository of Adélie Linux, as listed at <xref linkend="REF-4"/>.</para> + </formalpara> </section> <section id="assumptions"> <title>Assumptions</title> @@ -25,6 +81,29 @@ </section> <section id="dependencies"> <title>Project Dependencies</title> - <para/> + <formalpara id="DEP-1"> + <title>DEP-1</title> + <para>The system shall use the <ulink url="https://www.skarnet.org/software/bcnm/libwpactrl/">wpactrl library</ulink> from <ulink url="https://www.skarnet.org/software/bcnm/"><package>bcnm</package></ulink> for manipulating wireless network connections.</para> + </formalpara> + <formalpara id="DEP-2"> + <title>DEP-2</title> + <para>The system shall use the <ulink url="https://linux.die.net/man/3/libblkid">blkid library</ulink> from <ulink url="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"><package>util-linux</package></ulink> for determining current disk layout.<!-- TBD TODO discuss this --></para> + </formalpara> + <formalpara id="DEP-3"> + <title>DEP-3</title> + <para>The system shall use TBD TODO HELP for manipulating disk partitions.</para> + </formalpara> + <formalpara id="DEP-4"> + <title>DEP-4</title> + <para>The system shall use <ulink url="https://roy.marples.name/projects/dhcpcd"><package>dhcpcd</package></ulink> for automatically obtaining network configuration over the DHCP protocol.</para> + </formalpara> + <formalpara id="DEP-5"> + <title>DEP-5</title> + <para>The system shall use the <ulink url="https://www.freedesktop.org/software/systemd/man/libudev.html">libudev library</ulink> from <ulink url="https://wiki.gentoo.org/wiki/Eudev"><package>eudev</package></ulink> for enumerating devices present on the system, including but not limited to: disk drives, network interfaces, graphics adaptors.</para> + </formalpara> + <formalpara id="DEP-6"> + <title>DEP-6</title> + <para>The system shall use <package>tzdata</package> for time zone information and selection.</para> + </formalpara> </section> </chapter> |