Merge pull request 'documentation' (#3) from documentation into main

Reviewed-on: https://robmc.duckdns.org/git/TheOnePath/Microsoft-Edge-Updater/pulls/3
This commit is contained in:
TheOnePath 2021-06-04 21:21:54 +01:00
commit f88fb0ee10
2 changed files with 371 additions and 0 deletions

235
updater.1 Normal file
View File

@ -0,0 +1,235 @@
.\" Automatically generated by Pandoc 2.5
.\"
.TH "UPDATER" "1" "May 24, 2021" "updater 0.1.3" "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.
.PD 0
.P
.PD
.IP \[bu] 2
\f[C]\-y, \-\-yes\-all\f[R]
.PD 0
.P
.PD
Assume yes to all yes/no decisions.
.PD 0
.P
.PD
.IP \[bu] 2
\f[C]\-v, \-\-version\f[R]
.PD 0
.P
.PD
Print out the version of the script and exit.
.PD 0
.P
.PD
.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 privilages.
If the script fails to identify its elevation, it will exit and display
a message to STDOUT.
.SS DISCLAIMER!!
.PP
This version (0.1.3) only works for Microsoft Edge Beta on amd64
architecture.
A later release may allow for update of Dev build and potentially both.
.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.
.SH DEPENDENCIES
.IP \[bu] 2
bash
.IP \[bu] 2
wget
.IP \[bu] 2
gunzip
.IP \[bu] 2
tar
.IP \[bu] 2
sort (>= 8.32)
.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]\f[R] \-
.PD 0
.P
.PD
This tells the updater which package architecture it should download for
the system.
.IP "2." 3
\f[C]<https URL>\f[R] \-
.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] \-
.PD 0
.P
.PD
The main branch of the distribution repository.
.IP "4." 3
\f[C]stable\f[R] \-
.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
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 \- Documentation
.SS Contacting
.PP
All contacts should be done through Issues on Gitea.

136
updater.1.md Normal file
View File

@ -0,0 +1,136 @@
---
title: UPDATER
section: 1
header: User Manual
footer: updater 0.1.3
date: May 24, 2021
---
# NAME
`updater` — Automatically update Microsoft Edge on Solus
# SYNOPSIS
**`updater`** [ _option_ ]
# OPTIONS
* `-nn, --no-notify`
Prevent notifications from being sent after a session.
* `-y, --yes-all`
Assume yes to all yes/no decisions.
* `-v, --version`
Print out the version of the script and exit.
* `-h, --help`
Print this help message and exit
# DESCRIPTION
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 `updater` and while the system is akin to a package manager,
it's much, much simpler.
Systems that run Debian-based distros (using the `apt` package manager)
or Fedora/openSUSE (using the `dnf` 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/).
For those systems that use the amd64 architecture
but not the perviously mentioned bases/distros,
or package managers, may benefit from this program.
`updater` uses the Debian (`.deb`) release versions of Microsoft Edge
and automatically installs them to your system so you don't have to again!
## NOTE
`updater` must be ran with root privilages. If the script fails to identify its elevation,
it will exit and display a message to STDOUT.
### DISCLAIMER!!
This version (0.1.3) only works for Microsoft Edge Beta on amd64 architecture.
A later release may allow for update of Dev build and potentially both.
### Testing Systems
`updater` has been known to successfully run,
download and update Microsoft Edge (Beta) on Solus 4.2 Fortitude,
Kernel version 5.11.21-179.
# DEPENDENCIES
* bash
* wget
* gunzip
* tar
* sort (>= 8.32)
# FILES
* `source.list`
This file contains a list of URL end-points
to the official Microsoft Edge packages page.
There are 3 lines with dedicated purposes:
* `[host]`
A URL to the front page of Microsoft's Packages site,
used to check connectivity and if the site is reachable.
* `[dists]`
Most iconic line and resembles that of an APT entry for package information.
This line can be broken into 4 parts
1. `[dists=amd64]` -
This tells the updater which package architecture it
should download for the system.
2. `<https URL>` -
The URL which points to the distribution repository
on the Microsoft Packages server.
3. `main` -
The main branch of the distribution repository.
4. `stable` -
The type of release that should be installed to the system.
* `[pool]`
The prefix URL to the repository end-point that stores the latest releases.
The suffix comes from the Release information.
* `logs/`
This is a directory which holds the session and history logs.
* `logs/updater.log`
A full report log of the previous update session.
Replaced after every next update session.
* `logs/updater.history`
A history of all the previous update sessions.
Never replaced, only appended to after every next update session.
* `utils/`
Resource directory which contains any utility scripts.
These are stand-alone;
however, don't have any specific purpose being executed by a user.
* `utils/common`
A utility file with common functions for updater.
# EXIT STATUS
* 0 — Successful
* 1 — General Error (Errors not severe enough to the cause of the updater to stop)
* 2 — Could not find `source.list` for the update
* 3 — Host could not be reached. Check Internet connectivity and/or host URL
* 4 — Failed to download either the Packages information or Content information files
* 5 — Pool end-point could not be reached
* 6 — Failed to download the identified Debian (`.deb`) file from the host's pool
* 7 — Checksum verification of Debian (`.deb`) file failed. At this point, the downloaded file is removed
* 8 — Failed to unarchive the Debian (`.deb`) file or decompress the `data.tar.gz` file
* 9 — Failed to copy the new files to the system. At this point, the backup is restored to the system to prevent corruption
* 10 — The archive function failed to create an archive of the system
* 11 — 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
* 12 — The restore function failed to restore the files to their original location
* 255 — EOF flag was set when reading the Packages information file
* Other — an exit code not related to updater may have been raised. Consult the logs to identify which command returned the exit code.
# AUTHORS
* Ethan Smith-Coss
# CONTRIBUTORS
* Robert Morrison - Documentation
## Contacting
All contacts should be done through Issues on Gitea.