Fixed typos identified in PR review. Updated manpage accordingly by generation.
288 lines
7.4 KiB
Groff
288 lines
7.4 KiB
Groff
.\" Automatically generated by Pandoc 2.5
|
|
.\"
|
|
.TH "UPDATER" "1" "June 30, 2021" "updater 0.2.0" "User Manual"
|
|
.hy
|
|
.SH NAME
|
|
.PP
|
|
\f[C]updater\f[R] \[em] Automatically update Microsoft Edge on Solus
|
|
.SH SYNOPSIS
|
|
.PP
|
|
\f[B]\f[CB]updater\f[B]\f[R] [ \f[I]option\f[R] ]
|
|
.SH OPTIONS
|
|
.IP \[bu] 2
|
|
\f[C]\-nn, \-\-no\-notify\f[R]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
Prevent notifications from being sent after a session.
|
|
.IP \[bu] 2
|
|
\f[C]\-c, \-\-set\-channel=\f[R]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
Change the channel to be updated for Microsoft Edge.
|
|
Will default to the value defined in \f[C]souce.list\f[R] if flag is not
|
|
present.
|
|
.RS 2
|
|
.IP \[bu] 2
|
|
beta \- update the Beta channel release.
|
|
.IP \[bu] 2
|
|
dev \- update the Dev channel release.
|
|
.RE
|
|
.IP \[bu] 2
|
|
\f[C]\-q, \-\-quiet\f[R]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
Operate strictly with no output on \f[C]STDOUT\f[R] or \f[C]STDERR\f[R],
|
|
prompts will \f[B]NOT\f[R] assume yes however.
|
|
Logging still occurs in background.
|
|
.IP \[bu] 2
|
|
\f[C]\-\-mode=\f[R]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
Set the mode of the program to be ran in.
|
|
Default mode occurs without this flag.
|
|
.RS 2
|
|
.IP \[bu] 2
|
|
\f[B]\f[BI]debug\f[B]\f[R] \- run program in debug mode.
|
|
(\f[B]WIP\f[R])
|
|
.RE
|
|
.IP \[bu] 2
|
|
\f[C]\-\-full\-clean\f[R]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
Remove all content generated by updater after a session, this includes
|
|
all logs.
|
|
.IP \[bu] 2
|
|
\f[C]\-y, \-\-yes\-all\f[R]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
Assume yes to all yes/no decisions.
|
|
.IP \[bu] 2
|
|
\f[C]\-v, \-\-version\f[R]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
Print out the version of the script and exit.
|
|
.IP \[bu] 2
|
|
\f[C]\-h, \-\-help\f[R]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
Print this help message and exit
|
|
.SH DESCRIPTION
|
|
.PP
|
|
Microsoft Edge Updater is a program which will download and update your
|
|
installation of Microsoft Edge to the latest release version identified.
|
|
The main script is \f[C]updater\f[R] and while the system is akin to a
|
|
package manager, it\[cq]s much, much simpler.
|
|
.PP
|
|
Systems that run Debian\-based distros (using the \f[C]apt\f[R] package
|
|
manager) or Fedora/openSUSE (using the \f[C]dnf\f[R] package manager),
|
|
should install Microsoft Edge to their package manager according to the
|
|
official guide over at Microsoft Edge Insider \- Command line
|
|
installation (https://www.microsoftedgeinsider.com/en-us/download/).
|
|
.PP
|
|
For those systems that use the amd64 architecture but not the perviously
|
|
mentioned bases/distros, or package managers, may benefit from this
|
|
program.
|
|
\f[C]updater\f[R] uses the Debian (\f[C].deb\f[R]) release versions of
|
|
Microsoft Edge and automatically installs them to your system so you
|
|
don\[cq]t have to again!
|
|
.SS NOTE
|
|
.PP
|
|
\f[C]updater\f[R] must be ran with root privileges.
|
|
If the script fails to identify its elevation, it will exit and display
|
|
a message to STDOUT.
|
|
.SS DISCLAIMER!!
|
|
.PP
|
|
Currently this program has only updated Microsoft Edge for amd64
|
|
architectures, other architectures might be possible but not tested.
|
|
.SS Testing Systems
|
|
.PP
|
|
\f[C]updater\f[R] has been known to successfully run, download and
|
|
update Microsoft Edge (Beta) on Solus 4.2 Fortitude, Kernel version
|
|
5.11.21\-179 and later.
|
|
.PP
|
|
The test environment is a custom Docker image built from the Alpine
|
|
base.
|
|
Due to certain dependencies of Microsoft Edge, \f[C]updater\f[R] will
|
|
currently finish with exit code 11 on a successful session due to the
|
|
binary, \f[C]msedge\f[R], not being able to run.
|
|
This issue is only known for Busybox systems using \f[C]musl\f[R], and
|
|
not \f[C]glibc\f[R], which Microsoft Edge is built using.
|
|
.SH DEPENDENCIES
|
|
.IP \[bu] 2
|
|
bash
|
|
.IP \[bu] 2
|
|
wget
|
|
.IP \[bu] 2
|
|
git
|
|
.IP \[bu] 2
|
|
gunzip
|
|
.IP \[bu] 2
|
|
tar
|
|
.IP \[bu] 2
|
|
coreutils (>=8.32)
|
|
.IP \[bu] 2
|
|
binutils (>=2.35.1)
|
|
.IP \[bu] 2
|
|
procps (only Busybox\-based systems)
|
|
.SH FILES
|
|
.IP \[bu] 2
|
|
\f[C]source.list\f[R] \[em]
|
|
.RS 2
|
|
.PP
|
|
This file contains a list of URL end\-points to the official Microsoft
|
|
Edge packages page.
|
|
There are 3 lines with dedicated purposes:
|
|
.IP \[bu] 2
|
|
\f[C][host]\f[R] \[em]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
A URL to the front page of Microsoft\[cq]s Packages site, used to check
|
|
connectivity and if the site is reachable.
|
|
.IP \[bu] 2
|
|
\f[C][dists]\f[R] \[em]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
Most iconic line and resembles that of an APT entry for package
|
|
information.
|
|
This line can be broken into 4 parts
|
|
.RS 2
|
|
.IP "1." 3
|
|
\f[C][dists=amd64,<beta | dev>]\f[R] \[em]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
This tells the updater which package architecture it should download for
|
|
the system.
|
|
Comma delimited to that, determine which channel of Microsoft Edge to
|
|
update by default, and can be changed or override by flag arguments.
|
|
The default value of \f[C]dists\f[R] is \f[C]amd64,beta\f[R].
|
|
.IP "2." 3
|
|
\f[C]<https URL>\f[R] \[em]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
The URL which points to the distribution repository on the Microsoft
|
|
Packages server.
|
|
.IP "3." 3
|
|
\f[C]main\f[R] \[em]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
The main branch of the distribution repository.
|
|
.IP "4." 3
|
|
\f[C]stable\f[R] \[em]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
The type of release that should be installed to the system.
|
|
.RE
|
|
.IP \[bu] 2
|
|
\f[C][pool]\f[R] \[em]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
The prefix URL to the repository end\-point that stores the latest
|
|
releases.
|
|
The suffix comes from the Release information.
|
|
.RE
|
|
.IP \[bu] 2
|
|
\f[C]logs/\f[R] \[em]
|
|
.RS 2
|
|
.PP
|
|
This is a directory which holds the session and history logs.
|
|
.IP \[bu] 2
|
|
\f[C]logs/updater.log\f[R] \[em]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
A full report log of the previous update session.
|
|
Replaced after every next update session.
|
|
.IP \[bu] 2
|
|
\f[C]logs/updater.history\f[R] \[em]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
A history of all the previous update sessions.
|
|
Never replaced, only appended to after every next update session.
|
|
.RE
|
|
.IP \[bu] 2
|
|
\f[C]utils/\f[R] \[em]
|
|
.RS 2
|
|
.PP
|
|
Resource directory which contains any utility scripts.
|
|
These are stand\-alone; however, don\[cq]t have any specific purpose
|
|
being executed by a user.
|
|
.IP \[bu] 2
|
|
\f[C]utils/common\f[R] \[em]
|
|
.PD 0
|
|
.P
|
|
.PD
|
|
A utility file with common functions for updater.
|
|
.RE
|
|
.SH EXIT STATUS
|
|
.IP \[bu] 2
|
|
0 \[em] Successful
|
|
.IP \[bu] 2
|
|
1 \[em] General Error (Errors not severe enough to the cause of the
|
|
updater to stop)
|
|
.IP \[bu] 2
|
|
2 \[em] Could not find \f[C]source.list\f[R] for the update
|
|
.IP \[bu] 2
|
|
3 \[em] Host could not be reached.
|
|
Check Internet connectivity and/or host URL
|
|
.IP \[bu] 2
|
|
4 \[em] Failed to download either the Packages information or Content
|
|
information files
|
|
.IP \[bu] 2
|
|
5 \[em] Pool end\-point could not be reached
|
|
.IP \[bu] 2
|
|
6 \[em] Failed to download the identified Debian (\f[C].deb\f[R]) file
|
|
from the host\[cq]s pool
|
|
.IP \[bu] 2
|
|
7 \[em] Checksum verification of Debian (\f[C].deb\f[R]) file failed.
|
|
At this point, the downloaded file is removed
|
|
.IP \[bu] 2
|
|
8 \[em] Failed to unarchive the Debian (\f[C].deb\f[R]) file or
|
|
decompress the \f[C]data.tar.gz\f[R] file
|
|
.IP \[bu] 2
|
|
9 \[em] Failed to copy the new files to the system.
|
|
At this point, the backup is restored to the system to prevent
|
|
corruption
|
|
.IP \[bu] 2
|
|
10 \[em] The archive function failed to create an archive of the system
|
|
.IP \[bu] 2
|
|
11 \[em] If the system successfully restored files on an update failure,
|
|
the updater will exit with this code stating the update failed but
|
|
restoration was successful
|
|
.IP \[bu] 2
|
|
12 \[em] The restore function failed to restore the files to their
|
|
original location
|
|
.IP \[bu] 2
|
|
254 \[em] The channel to update cannot be identified.
|
|
Most likely cause is \f[C]source.list\f[R] is corrupt and \f[C]\-c\f[R]
|
|
was not passed.
|
|
.IP \[bu] 2
|
|
255 \[em] EOF flag was set when reading the Packages information file
|
|
.IP \[bu] 2
|
|
Other \[em] an exit code not related to updater may have been raised.
|
|
Consult the logs to identify which command returned the exit code.
|
|
.SH AUTHORS
|
|
.IP \[bu] 2
|
|
Ethan Smith\-Coss
|
|
.SH CONTRIBUTORS
|
|
.IP \[bu] 2
|
|
Robert Morrison \[em] Documentation
|
|
.SS Contacting
|
|
.PP
|
|
All contacts should be done through Issues on Gitea.
|