6.3 KiB
| title | section | header | footer | date |
|---|---|---|---|---|
| MSEDGE-UPDATER | 1 | User Manual | updater 0.2.1 | December 9, 2021 |
NAME
msedge-updater — Automatically update Microsoft Edge on Solus
SYNOPSIS
msedge-updater [ option ]
OPTIONS
-nn, --no-notify
Prevent notifications from being sent after a session.-c, --set-channel=
Change the channel to be updated for Microsoft Edge. Will default to the value defined insource.listif flag is not present.- beta - update the Beta channel release.
- dev - update the Dev channel release.
-q, --quiet
Operate strictly with no output onSTDOUTorSTDERR, prompts will NOT assume yes however. Logging still occurs in background.--mode=
Set the mode of the program to be ran in. Default mode occurs without this flag.- debug - run program in debug mode. (WIP)
--full-clean
Remove all content generated by the updater after a session, this includes all logs.-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 msedge-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.
For those systems that use the amd64 architecture
but not the perviously mentioned bases/distros,
or package managers, may benefit from this program.
msedge-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
msedge-updater must be ran with root privileges. If the script fails to identify its elevation,
it will exit and display a message to STDOUT.
DISCLAIMER!!
Currently this program has only updated Microsoft Edge for amd64 architectures, other architectures might be possible but not tested.
Testing Systems
msedge-updater 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.
The test environment is a custom Docker image built from the Alpine base. Due to certain dependencies
of Microsoft Edge, msedge-updater will currently finish with exit code 11 on a successful session due to
the binary, msedge, not being able to run. This issue is only known for Busybox systems using musl,
and not glibc, which Microsoft Edge is built using.
DEPENDENCIES
- bash
- wget
- git
- gunzip
- tar
- coreutils (>=8.32)
- binutils (>=2.35.1)
- procps (only Busybox-based systems)
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[dists=amd64,<beta | dev>]—
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 ofdistsisamd64,beta.<https URL>—
The URL which points to the distribution repository on the Microsoft Packages server.main—
The main branch of the distribution repository.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 the 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.listfor 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 thedata.tar.gzfile - 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
- 254 — The channel to update cannot be identified. Most likely cause is
source.listis corrupt and-cwas not passed. - 255 — EOF flag was set when reading the Packages information file
- Other — an exit code not related to the 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.