Sunday, February 28, 2021

Run Windows 10 in GNOME Boxes

 GNOME Boxes is a well-designed way to set up and manage virtualized guest systems from your Linux host system. It can also be used to connect and manage remote connections to screen-sharing or virtualized systems on remote machines.

I’ve been running Windows 10 in Boxes with good results. 3D acceleration isn’t yet supported, so graphical performance isn’t always great. Here’s how you can quickly get Windows 10 up and running in GNOME Boxes.


Prerequisites

You’ll need a few things ready before you begin:

  • GNOME Boxes 3.16 or later installed. Version 3.18 resolves some compatibility issues with Windows 10.
  • An Intel Virtualization Technology (VT-x) capable or similar virtualization capable processor. Only the very cheapest processors don’t have this, but you may need to enable it in BIOS first.
  • At least 4 GB of system memory.
  • A Windows 10 ISO installation media available for download from Microsoft
  • A valid Windows Product Key for OEM installations. You can skip this during the install, but you will need to provide one within 30-days of installation.

All current Linux distributions offer the gnome-boxes package as part of their package repository. It can be installed separately and the GNOME desktop includes Boxes by default, but your Linux distribution may have removed it in favor of other options.

Boxes is very user-friendly and offer good performance built on standard Linux technologies, so please do consider switching to Boxes if you’ve used other virtualization options until now.

Installing Windows 10 in GNOME Boxes

  1. Launch GNOME Boxes and click the “New” button in the top left corner.
  2. Select the ISO for the operating system you want to install. If you’ve downloaded the Windows installation media (or any other ISO file) to your Home folder’s Download folder, it will be listed right there in Boxes.
  3. On the next screen, assign the Windows guest system at least 3 GB of memory, and 20 GB of disk space. The guest will run more comfortably with 6 GB of memory and 34 GB of disk space.
  4. Click the Create button the regular Windows installer will boot up.
  5. After choosing language and region, you’ll be asked to enter a Windows 10 product key. You’ve some options for how to proceed from here:
    • Reuse a spare Windows 7 or 8 product key, if you’ve a boxed copy lying around that you’re not using anymore. Home, Pro, Premium, and Ultimate editions are eligible for a free update to Windows 10.
    • Purchase a Windows 10 Pro product key as a download.
    • Proceed with the installation without entering a product key by clicking “I don’t have a product key.” You can evaluate whether Windows 10 works well enough for you in GNOME Boxes and buy a product key later. You must login with a Microsoft Account if you don’t enter a product key now.
  6. Choose “Custom” you get the “Which type of installation do you want?” screen, but just click Next to proceed with the default options. You can just ignore the partitioning screen.

Let the installation run its course. When the installation is complete, you’ll be presented with the normal first-time start-up wizard for setting up a user account. You can watch a video of the complete installation process if you want to see GNOME Boxes in action.

Post-installation

Once you’ve got Windows 10 up and running you’ll need to do a few more things to get Windows 10 and GNOME to be fully integrated.

To enable screen resizing and clipboard sharing, you need to download and install the Windows guest tools for Spice. The download link is quite far down on the download page, and be wary of all the other downloads offered. You want the one called “Windows guest tools” under the “Guest” headline. Run the installer and you’re all set up. There’s no need to reboot the system unless your mouse cursor “jitters” after installing it.

After installing the guest tools, you can resize GNOME Boxes window or take it full screen and the guest system will adjust to the new screen dimensions automatically. Things you copy onto the clipboard will now also be shared between the two machines, so you can exchange links and other text data between the guest and host system.

Clipboard sharing even works between two guest systems – something that never works reliably with VirtualBox! You can disable clipboard sharing if you desire stronger system isolation by disabling the option in Boxes menu: Properties: General: Share Clipboard.

Self-configuring audio output for Windows 10 and 8 in GNOME Boxes is pending on bug #761031. To get audio working you can use one of these two options:

Option 1: Modify your libvirt qemu files. Open Boxes, perform a full shut down of the virtual machine, and note the auto-assigned name given to the virtual machine. Open up the Terminal and type EDITOR=gedit virsh edit YOURBOXNAME. If you’ve modified the name after installing, you can find the file in ~/.config/libvirt/qemu/, but don’t edit it directly — rather use the name with the previous command.

Locate the line that says <sound model='ac97'> within the file and replace it with <sound model='ich6'>. Save and close the file. The next time you boot up the virtual system, you’ll have working sound. In low memory environments, you should consider the next option instead.

Option 2: Use a USB audio card and pass it through to the guest system. Connect a USB audio card and open the Boxes menu: Properties: Devices. Locate the USB sound card and enable it. With any recent Linux Kernel, you should have no problem hot-swapping (connecting and disconnecting between running systems) such a card to share it between the Linux host and guest systems.

I’m using the cheapest USB CM108 sound card I could find and have had no issues with it. This can give a better and less stuttery audio performance.

How to open the Settings app from the Command Prompt in Windows 10

 

PowerShell command prompt

You can open the legacy Windows Control Panel by starting control.exe, but how do you open the Windows Settings app from the Command Prompt or PowerShell?

You can open the Settings app directly from the Command Prompt (cmd.exe) in Windows 10 using the following command:

start ms-settings:

You can omit the start program from the above command if you run it from the Run dialog (Win+R) instead of from within a Command Prompt session.

The Run dialog will recognize the Settings app’s URI scheme (ms-settings) without passing it through ‘start’ and start the Settings app accordingly. You’ll still need to use the start program if you want to launch the Settings app from a batch file, however.

You can optimistically type in an English language keyword after the colon to direct you towards the right section of the Settings app. For example, ms-settings:network will go directly to the Network and Internet section of the Settings app.

There’s no penalty for guessing wrong, so just take a guess and maybe you’ll drop straight into settings:windowsupdate without using the mouse. App developers and web authors should take care to link their users directly to the right section in Settings, reducing documentation needs and user friction.

You can use the same command in PowerShell — where start is an alias for Start-Process — or spell it out fully using the PowerShell commandlets (as shown below).

Start-Process "ms-settings:"

These commands — actually the whole ms-settings: URI schema — will not work on older versions of Windows like Windows 8 and 8.1. Also, note that the Settings app is unavailable from within Windows Recovery mode.

In my opinion, this is kind of a strange decision as the reason you’re in recovery mode may be caused by a setting. However, user settings don’t apply at all within recovery mode so it could have been a very confusing experience if you were allowed to open the Settings app.

Users on Windows 10 can click here to open the Settings app directly from their web browser. The link won’t do anything or may trigger an error message on other operating systems.

Saturday, February 27, 2021

Microsoft Office has poor document format support between platforms

 The brand name “Microsoft Office” doesn’t always mean “Microsoft Office”. A quick comparison of what document formats are supported on which platforms. It is clear the OpenDocument Text format isn’t a priority. I put Word for iPad through a simple document format compatibility test to see how it stacks up against Microsoft’s other offerings. I’ve already had bad experiences from Office Mobile for Android and iPhone, and were curious to see if the tablet variant performed any better.

Yesterday, Microsoft Office for iPad made its worldwide debut. It got a lot of attention from the press despite being less relevant than it would have been three years ago.

Microsoft word


Document format support in Microsoft Office’s many word processor products

                                  th scope="row">Open XML (.docx
              
Product Platform Binary Format (.doc) OpenDocument (.odt) Plain-text (.txt) Plain-text (.*) Rich-text (.rtf)
Word Online Web supported compatibility mode compatibility warnings none none none
Word Windows, WinRT supported supported compatibility warnings supported supported supported
OS X supported supported none supported some extensions supported
iPad supported compatibility mode none none none none
Office Mobile Word iPhone, iPod supported compatibility mode none read-only none read-only
Android supported compatibility mode none read-only none none
Windows Phone supported compatibility mode infinite loading supported none read-only
OneDrive Editor Web none none none supported some extensions none





“Supported” in the above table means that a basic document can be viewed and edited. Advanced functionality such as password protected document, complicated formatting, and complex layouts are only available in the Windows, WinRT, and OS X versions.


Interoperability be damned?

Microsoft, under competitive law pressure from the European Commission, have stated their intent to support the OpenDocument Format (ODF) alongside their own Office Open XML Format. Adding ODF support in Office was one of their ways to increase interoperability between Office and competing products.

Microsoft’s commitment, however, seem to be limited to its desktop and tablet Windows operating systems only. The OpenDocument Format isn’t supported in Office Mobile (Android, iOS, and Windows Phone) nor in Microsoft Office for Mac OS X and iPad.

Curiously though, the OpenDocument Format is supported in Office Online. Possibly giving an indication of where Microsoft thinks the future of its Office product is heading.

Plain-text baseline missing

I am surprised by the lack of support for unformatted plain-text documents. I would have expected these simplest of documents would have formed the minimum baseline for what one can expect from a word processor.