Microsoft Edge Debian
Applies to: IoT Edge 1.1Other versions:IoT Edge 1.2
Make Microsoft Edge your own with extensions that help you personalize the browser and be more productive. Krystalo writes: Edge is finally coming to Linux. At Ignite 2020 today, Microsoft announced that Edge for Linux will be available in the Dev preview channel starting in October. Linux users will be able to download the preview from the Microsoft Edge Insider website or from their native Linux package manager.
Applies to: IoT Edge 1.2Other versions:IoT Edge 1.1
- Microsoft’s Chromium-powered Edge browser is now available on Linux. Although yet to reach general availability, you can install Edge from the “Dev Channel” today, giving Linux desktop users a new.
- In Debian/Ubuntu Based Linux This is the most commonly used Linux in the whole community. It usually supports the.deb file to be installed manually. So, we are going to install the.deb file of the new chromium-based Microsoft Edge and will install it manually.
- Microsoft Edge For Linux Is Here Microsoft kept good on their promise to release a Linux version of their Edge web browser product in October 2020. It's here with packages available for Debian, Ubuntu, Fedora and OpenSUSE. The browser itself is not very unique or special, it's mostly just Chromium wrapped in a.
The Azure IoT Edge runtime is what turns a device into an IoT Edge device. The runtime can be deployed on devices as small as a Raspberry Pi or as large as an industrial server. Once a device is configured with the IoT Edge runtime, you can start deploying business logic to it from the cloud. To learn more, see Understand the Azure IoT Edge runtime and its architecture.
This article lists the steps to install the Azure IoT Edge runtime on Linux devices.
Prerequisites
A registered device ID
If you registered your device with symmetric key authentication, have the device connection string ready.
If you registered your device with X.509 self-signed certificate authentication, have at least one of the identity certificates that you used to register the device and its matching private key available on your device.
A Linux device
Have an X64, ARM32, or ARM64 Linux device. Microsoft provides installation packages for Ubuntu Server 18.04 and Raspberry Pi OS Stretch operating systems.
For the latest information about which operating systems are currently supported for production scenarios, see Azure IoT Edge supported systems
Note
Support for ARM64 devices is in public preview.
Prepare your device to access the Microsoft installation packages.
Install the repository configuration that matches your device operating system.
Ubuntu Server 18.04:
Raspberry Pi OS Stretch:
Copy the generated list to the sources.list.d directory.
Install the Microsoft GPG public key.
Azure IoT Edge software packages are subject to the license terms located in each package (usr/share/doc/{package-name}
or the LICENSE
directory). Read the license terms prior to using a package. Your installation and use of a package constitutes your acceptance of these terms. If you do not agree with the license terms, do not use that package.
Install a container engine
Azure IoT Edge relies on an OCI-compatible container runtime. For production scenarios, we recommended that you use the Moby engine. The Moby engine is the only container engine officially supported with Azure IoT Edge. Docker CE/EE container images are compatible with the Moby runtime.
Update package lists on your device.
Install the Moby engine.
If you get errors when installing the Moby container engine, verify your Linux kernel for Moby compatibility. Some embedded device manufacturers ship device images that contain custom Linux kernels without the features required for container engine compatibility. Run the following command, which uses the check-config script provided by Moby, to check your kernel configuration:
In the output of the script, check that all items under Generally Necessary
and Network Drivers
are enabled. If you are missing features, enable them by rebuilding your kernel from source and selecting the associated modules for inclusion in the appropriate kernel .config. Similarly, if you are using a kernel configuration generator like defconfig
or menuconfig
, find and enable the respective features and rebuild your kernel accordingly. Once you have deployed your newly modified kernel, run the check-config script again to verify that all the required features were successfully enabled.
Install IoT Edge
The IoT Edge security daemon provides and maintains security standards on the IoT Edge device. The daemon starts on every boot and bootstraps the device by starting the rest of the IoT Edge runtime.
The steps in this section represent the typical process to install the latest version on a device that has internet connection. If you need to install a specific version, like a pre-release version, or need to install while offline, follow the Offline or specific version installation steps later in this article.
Update package lists on your device.
Check to see which versions of IoT Edge are available.
If you want to install the most recent version of the security daemon, use the following command that also installs the latest version of the libiothsm-std package:
Or, if you want to install a specific version of the security daemon, specify the version from the apt list output. Also specify the same version for the libiothsm-std package, which otherwise would install its latest version. For example, the following command installs the most recent version of the 1.1 release:
If the version that you want to install isn't listed, follow the Offline or specific version installation steps later in this article. That section shows you how to target any previous version of the IoT Edge security daemon, or release candidate versions.
The IoT Edge service provides and maintains security standards on the IoT Edge device. The service starts on every boot and bootstraps the device by starting the rest of the IoT Edge runtime.
The IoT identity service was introduced along with version 1.2 of IoT Edge. This service handles the identity provisioning and management for IoT Edge and for other device components that need to communicate with IoT Hub.
The steps in this section represent the typical process to install the latest version on a device that has internet connection. If you need to install a specific version, like a pre-release version, or need to install while offline, follow the Offline or specific version installation steps later in this article.
Note
Install Microsoft Edge Linux
The steps in this section show you how to install IoT Edge version 1.2.
If you already have an IoT Edge device running an older version and want to upgrade to 1.2, use the steps in Update the IoT Edge security daemon and runtime. Version 1.2 is sufficiently different from previous versions of IoT Edge that specific steps are necessary to upgrade.
Update package lists on your device.
Check to see which versions of IoT Edge are available.
If you want to install the most recent version of IoT Edge, use the following command that also installs the latest version of the identity service package:
Or, if you want to install a specific version of IoT Edge and the identity service, specify the versions from the apt list output. Specify the same versions for both services. For example, the following command installs the most recent version of the 1.2 release:
Provision the device with its cloud identity
Now that the container engine and the IoT Edge runtime are installed on your device, you're ready for the next step, which is to set up the device with its cloud identity and authentication information.
Choose the next section based on which authentication type you want to use:
Option 1: Authenticate with symmetric keys
At this point, the IoT Edge runtime is installed on your Linux device, and you need to provision the device with its cloud identity and authentication information.
This section walks through the steps to provision a device with symmetric key authentication. You should have registered your device in IoT Hub, and retrieved the connection string from the device information. If not, follow the steps in Register an IoT Edge device in IoT Hub.
On the IoT Edge device, open the configuration file.
Find the provisioning configurations of the file and uncomment the Manual provisioning configuration using a connection string section, if it isn't already uncommented.
Update the value of device_connection_string with the connection string from your IoT Edge device. Make sure that any other provisioning sections are commented out. Make sure the provisioning: line has no preceding whitespace and that nested items are indented by two spaces.
To paste clipboard contents into Nano Shift+Right Click
or press Shift+Insert
.
Save and close the file.
CTRL + X
, Y
, Enter
After entering the provisioning information in the configuration file, restart the daemon:
Create the configuration file for your device based on a template file that is provided as part of the IoT Edge installation.
On the IoT Edge device, open the configuration file.
Find the Provisioning section of the file and uncomment the manual provisioning with connection string lines.
Update the value of connection_string with the connection string from your IoT Edge device.
To paste clipboard contents into Nano Shift+Right Click
or press Shift+Insert
.
Save and close the file.
CTRL + X
, Y
, Enter
After entering the provisioning information in the configuration file, apply your changes:
Option 2: Authenticate with X.509 certificates
At this point, the IoT Edge runtime is installed on your Linux device, and you need to provision the device with its cloud identity and authentication information.
This section walks through the steps to provision a device with X.509 certificate authentication. You should have registered your device in IoT Hub, providing thumbprints that match the certificate and private key located on your IoT Edge device. If not, follow the steps in Register an IoT Edge device in IoT Hub.
On the IoT Edge device, open the configuration file.
Find the provisioning configurations section of the file and uncomment the Manual provisioning configuration using an X.509 identity certificate section. Make sure that any other provisioning sections are commented out. Make sure the provisioning: line has no preceding whitespace and that nested items are indented by two spaces.
Update the following fields:
- iothub_hostname: Hostname of the IoT hub the device will connect to. For example,
{IoT hub name}.azure-devices.net
. - device_id: The ID that you provided when you registered the device.
- identity_cert: URI to an identity certificate on the device. For example,
file:///path/identity_certificate.pem
. - identity_pk: URI to the private key file for the provided identity certificate. For example,
file:///path/identity_key.pem
.
Save and close the file.
CTRL + X
, Y
, Enter
After entering the provisioning information in the configuration file, restart the daemon:
Create the configuration file for your device based on a template file that is provided as part of the IoT Edge installation.
On the IoT Edge device, open the configuration file.
Find the Provisioning section of the file and uncomment the lines for manual provisioning with X.509 identity certificate. Make sure that any other provisioning sections are commented out.
Update the following fields:
- iothub_hostname: Hostname of the IoT hub the device will connect to. For example,
{IoT hub name}.azure-devices.net
. - device_id: The ID that you provided when you registered the device.
- identity_cert: URI to an identity certificate on the device, for example:
file:///path/identity_certificate.pem
. Or, dynamically issue the certificate using EST or a local certificate authority. - identity_pk: URI to the private key file for the provided identity certificate, for example:
file:///path/identity_key.pem
. Or, provide a PKCS#11 URI and then provide your configuration information in the PKCS#11 section later in the config file.
Save and close the file.
CTRL + X
, Y
, Enter
After entering the provisioning information in the configuration file, apply your changes:
Verify successful configuration
Verify that the runtime was successfully installed and configured on your IoT Edge device.
Tip
You need elevated privileges to run iotedge
commands. Once you sign out of your machine and sign back in the first time after installing the IoT Edge runtime, your permissions are automatically updated. Until then, use sudo
in front of the commands.
Check to see that the IoT Edge system service is running.
A successful status response is Ok
.
If you need to troubleshoot the service, retrieve the service logs.
Use the check
tool to verify configuration and connection status of the device.
Tip
Always use sudo
to run the check tool, even after your permissions are updated. The tool needs elevated privileges to access the config file to verify configuration status.
View all the modules running on your IoT Edge device. When the service starts for the first time, you should only see the edgeAgent module running. The edgeAgent module runs by default and helps to install and start any additional modules that you deploy to your device.
Offline or specific version installation (optional)
The steps in this section are for scenarios not covered by the standard installation steps. This may include:
- Install IoT Edge while offline
- Install a release candidate version
Use the steps in this section if you want to install a specific version of the Azure IoT Edge runtime that isn't available through apt-get install
. The Microsoft package list only contains a limited set of recent versions and their sub-versions, so these steps are for anyone who wants to install an older version or a release candidate version.
Using curl commands, you can target the component files directly from the IoT Edge GitHub repository.
Navigate to the Azure IoT Edge releases, and find the release version that you want to target.
Expand the Assets section for that version.
Every release should have new files for the IoT Edge security daemon and the hsmlib. If you're going to install IoT Edge on an offline device, download these files ahead of time. Otherwise, use the following commands to update those components.
Find the libiothsm-std file that matches your IoT Edge device's architecture. Right-click on the file link and copy the link address.
Use the copied link in the following command to install that version of the hsmlib:
Find the iotedge file that matches your IoT Edge device's architecture. Right-click on the file link and copy the link address.
Use the copied link in the following command to install that version of the IoT Edge security daemon.
Note
If your device is currently running IoT Edge version 1.1 or older, uninstall the iotedge and libiothsm-std packages before following the steps in this section. For more information, see Update from 1.0 or 1.1 to 1.2.
Navigate to the Azure IoT Edge releases, and find the release version that you want to target.
Expand the Assets section for that version.
Every release should have new files for IoT Edge and the identity service. If you're going to install IoT Edge on an offline device, download these files ahead of time. Otherwise, use the following commands to update those components.
Find the aziot-identity-service file that matches your IoT Edge device's architecture. Right-click on the file link and copy the link address.
Use the copied link in the following command to install that version of the identity service:
Find the aziot-edge file that matches your IoT Edge device's architecture. Right-click on the file link and copy the link address.
Use the copied link in the following command to install that version of IoT Edge.
Now that the container engine and the IoT Edge runtime are installed on your device, you're ready for the next step, which is to Provision the device with its cloud identity.
Uninstall IoT Edge
If you want to remove the IoT Edge installation from your device, use the following commands.
Remove the IoT Edge runtime.
Use the --purge
flag if you want to delete all the files associated with IoT Edge, including your configuration files. Leave this flag out if you want to reinstall IoT Edge and use the same configuration information in the future.
When the IoT Edge runtime is removed, any containers that it created are stopped but still exist on your device. View all containers to see which ones remain.
Delete the containers from your device, including the two runtime containers.
Finally, remove the container runtime from your device.
Next steps
Continue to deploy IoT Edge modules to learn how to deploy modules onto your device.
Microsoft Edge For Mac
Join Transform 2021 this July 12-16. Register for the AI event of the year.
Edge is finally coming to Linux. At Ignite 2020 today, Microsoft announced that Edge for Linux will be available in the Dev preview channel starting in October. Linux users will be able to download the preview from the Microsoft Edge Insider website or from their native Linux package manager. Microsoft will start with the Ubuntu and Debian distributions, with support for Fedora and openSUSE coming afterwards.
Microsoft launched Chromium Edge for Windows 7, Windows 8, Windows 10, and macOS in January 2020. The browser has since been installed on “hundreds of millions of devices and climbing,” a Microsoft spokesperson told VentureBeat, and is now the second most popular desktop browser, after Chrome, according to Net Applications.
Microsoft wants Edge to be “the browser for business.” Bringing Edge to Linux isn’t so much an attempt to grow market share as it is a way to give businesses the option of rolling out a single browser to all their employee’s devices. “We are thrilled with customer interest we’ve received since we first announced our intention to bring Edge to Linux,” Edge program manager Kyle Pflug told VentureBeat. “We’ve heard feedback from business customers that they want one browser solution to deploy to their organization regardless of platform, and we’re excited to bring an offering to those that need a solution for Linux.”
Also available today, IT professionals can now roll back to a previous version of Chromium Edge. Microsoft said it is offering this feature because sometimes new versions break things, and in remote work environments, “any break is magnified.” With so many more employees working remotely nowadays, the company wants to give IT Pros a way to quickly “minimize interruption and address the issue.”
Going after developers
Microsoft specifically wants to ensure enterprise developers can get Edge for Linux. The primary goal is to reduce testing costs for businesses that want their websites to work on Edge.
“Linux stands out in that, while it has a relatively small desktop population in terms of what you might call typical consumer or end user, developers are often overrepresented in that population, and especially in areas like test automation, or CI/CD workloads for their web apps,” Pflug told VentureBeat. “Edge on Linux is a natural part of our strategy to reduce fragmentation and test overhead for web developers. By providing the same rendering behavior and tools across platforms, developers can build and test sites and web apps in their preferred environment and be confident in the experience their customers will have.”
Once Microsoft releases the first preview in October, the team plans to ship weekly builds in sync with the Dev channel on Windows and macOS. Microsoft promises developer tools, extensions, test automation, WebDriver, and Puppeteer will all work. Some end user scenarios, such as connected services like sign in and sync will not be available, as those will arrive in future previews. But everything developers care about should work — it isn’t called the Dev channel for nothing.
Because Chromium doesn’t have a Canary channel for Linux, Chromium Edge won’t have a Canary channel for Linux either. Edge for Linux will eventually get Beta and Stable channels, of course, but Microsoft would not commit to a time frame for either.
New Edge features coming soon
At Ignite 2020, Microsoft also announced a bunch of new Edge capabilities that are “coming soon.” WebView2, which is decoupled from specific versions of Windows, will be available for C/C++ and .NET by the end of 2020. Once available, any Windows app will be able to embed web content using Chromium Edge.
Chromium Edge is getting a preview of kiosk mode, also coming soon. With assigned access, it creates a locked-down and tailored browsing experience on Windows 10 for kiosks and digital signage. This is meant to replace the popular kiosk mode in Microsoft Edge Legacy, the version that is not based on Chromium and will lose support on March 9, 2021.
IT Pros also have new functionality to look forward to. They will soon be able to manage their Enterprise Mode Site list from the cloud, instead of locally hosting the XML site list.
Additionally, using Azure Active Directory profiles in Edge, App Configuration in Intune will soon let IT Pros manage only the activity in an app that is related to work, leaving the rest of the device alone. Employees will be able to log in to their work identity on a personal device, while the organization only manages that experience. IT departments get the control they want for compliance, and end users get to use the device they want without handing over the keys.
Finally, Edge will get new PDF features in October. The biggest boon for businesses is the ability to view and validate PDF digital signatures, which is useful for verifying the authenticity of documents, particularly for anything legally or financially binding. Users will also be able to add notes to PDFs and access interactive tables of content.
VentureBeat
VentureBeat's mission is to be a digital town square for technical decision-makers to gain knowledge about transformative technology and transact.Our site delivers essential information on data technologies and strategies to guide you as you lead your organizations. We invite you to become a member of our community, to access:- up-to-date information on the subjects of interest to you
- our newsletters
- gated thought-leader content and discounted access to our prized events, such as Transform 2021: Learn More
- networking features, and more