EdgeUpdateService (EUS) is a robust, Java-based program designed to automate the update process for Microsoft Edge on Linux. Instead of manually checking and installing updates, EUS ensures your Edge browser is always up to date by seamlessly integrating with your system’s startup routine. Tested on Ubuntu amd64, it leverages systemd to start automatically with your network connection, so updates occur without any manual intervention.
Note
Currently, EUS supports updates for only the Beta channel of Microsoft Edge. Contributions are welcome to extend support to other channels.
- Automated Efficiency: Say goodbye to manual updates. EUS checks for the latest releases and automatically upgrades your Edge browser once per login, ensuring you always have the most current version without any extra effort.
- Seamless Integration: Running as a native systemd service, EUS fits effortlessly into your environment, ensuring reliable operation right from system boot.
- Transparent Operation: With clear status outputs and detailed logs, you can monitor the update process using standard system tools like
systemctl
andjournalctl
. - Minimal Configuration: Designed with simplicity in mind, EUS requires only a few steps to install and enable, freeing you to focus on your work without worrying about browser updates.
Note
This service does not manage the acceptance of the terms and conditions of Microsoft Edge. It solely automates the update process; users remain responsible for the initial acceptance of Edge’s terms.
- Download the
eus
executable from the release page and put the binary in/usr/bin
directory. - Run this command with elevated privileges:
sudo eus -gs
to install and enable the EUS service file. - EUS service will be enabled and started automatically at startup time when the network connection starts up.
Available commands:
eus [ --help | -h ]
: Display help.eus [ --version | -v ]
: Display version.eus [ --uninstall-eus | -u ]
: Uninstall everything related to EUS excluding the binary which you need to remove manually. This command requires admin permissions (sudo
).eus [ --generate-service | -gs ]
: Installs and enables the EUS service. This command requires admin permissions (sudo
).eus
(with no arguments): Check for Edge updates and install if available. This command also requires admin permissions (sudo
).
For EUS service, below are some examples of how
- To manually start the service, run
sudo systemctl start edge-update.service
. - To stop the service, run
sudo systemctl stop edge-update.service
. - To disable the service, run
sudo systemctl disable edge-update.service
. - To enable the service, run
sudo systemctl enable edge-update.service
.
- If the service is not working, check the logs by running
sudo journalctl -u edge-update.service
. - If the service is not starting, check the status by running
sudo systemctl status edge-update.service
. - If the service is not updating the Edge browser, check the logs by running
sudo journalctl -xeu edge-update.service
.
- Run this command with
sudo
privileges:eus -u
to disable and remove the EUS service file. - Remove the binary from
/usr/bin
directory.
The project is built using the following technologies:
Note
You need to have JDK 23 and GraalVM installed on your machine to build the project.
You must set GRAALVM_HOME
environment variable to the path of GraalVM.
- Clone the repository.
- Run
mvn clean install
to build the project. - Run
mvn -P build-binary package
to build the binary. A binary namedeus
will be created in thetarget
directory. - Follow the installation steps to install the binary.
Tip
If you have changed the source code and want to build a new binary, it is recommended to run mvn -P generate-graalvm-metadata exec:exec@java-agent
before building the binary.
This command will generate the GraalVM metadata required for the binary.
Contributions are welcome! Please read the contributing guidelines before submitting a pull request.