2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

UbuntuでMicrosoft Officeを安定的に使う方法

Last updated at Posted at 2025-02-10

1. 本記事執筆の背景と目的

1.1. 背景

  • 職業柄Mirosoft OfficeのPowerPointを使い倒しているものの、私生活ではプログラミングをしているためPCはUbuntu Desktopを使っている
  • 時折寄せられる開発相談で資料を作ろうとすると代替ソフトでは以下のような課題がある:
    • Office365ではレイテンシーや機能不足で作業が進まない
    • WPS Officeも使い勝手で満足できないのみならず日本語入力のバグがあったりする
  • Wineでは古代のMicrosoft Officeしか動かない
  • よってPCを再起動してWindowsに切り替えざるを得ないためにとても不便である
  • どうせならUbuntuのパッケージのようにシームレスに使いたい

1.2. 目的

Ubuntu24.04上でMicrosoft Officeをシームレスに使用する手順を記録し、自身の備忘とすると共に、同じニッチな悩みを持つ方々の一助とする

1.3. 環境

OS: Ubuntu24.04 (x11)

2. Microsoft Office(Power Point)起動までのステップ

本節では必要なパッケージのインストールから設定までを順を追って説明する

2.1. 必要なパッケージのインストール

まず、以下の四つのパッケージをインストールする

  1. podman, podman-compose
  2. FreeRDP
  3. dialog

2.1.1. podmanおよびpodman-compose

sudo apt install podman podman-compose

2.1.2. FreeRDP

sudo apt install freerdp3-x11

2.1.3. dialog

dialogのインストールのためにはuniverseというレポジトリを追加する必要がある

sudo add-apt-repository universe
sudo apt update
sudo apt install dialog

2.2. Windows仮想マシンの初回起動

次にWindows仮想マシンを立ち上げる

2.2.1. Winappsをダウンロードする

workspace]$ git clone https://github.com/winapps-org/winapps.git
workspace]$ cd winapps

2.2.2. ダウンロードするWindowsイメージの変更

デフォルトではtiny11という最小限の機能を有したWindows11のISOファイルがダウンロードされる。日本語入力およびMicrosoft IMEを使用できるように、なによりインストールが壊れないように(※1)ベースとなるWindowsイメージを変更する

設定はcompose.yamlに書かれており、VERSIONtiny11から11に変更すればWindows11 Proがダウンロードされるようになる

winapps]$ vi compose.yaml
# compose.yaml
services:
  windows:
    environment:
      # tiny11 -> 11
      VERSION: "11"

※1)"windows could not compelete the installation"で無限に再起動する

2.2.3. 仮想マシンの起動

Windows仮想マシンを起動する

winapps]$ podman-compose --file ./compose.yaml up 

ブラウザからhttp://127.0.0.1:8006にアクセスすると、しばらくイメージのダウンロードに時間を要しつつも、最終的にWindows11が起動することが確認できる

image.png

2.3. 設定ファイルの編集

次にcompose.yaml~/.config/winappsにコピーして二箇所を編集して設定を行う。

winapps]$ cp compose.yaml ~/.config/winapps/compose.yaml
winapps]$ vi ~/.comfig/winapps/compose.yaml

編集1: 自動で起動するようにrestartを設定する

# ~/.config/winapps/compose.yaml

# on-failure -> always
restart: always

編集2: OEMの部分をコメントアウトする

#- ./oem:/oem

2.4. 設定の反映

編集したファイルで起動し直す

winapps]$ podman-compose --file ./compose.yaml down
winapps]$ podman-compose --file ~/.config/winapps/compose.yaml up

ちなみに、仮想マシンはWinAppsという名前で立ち上がっており、二回目以降の起動にはupコマンドではなく以下のコマンドでよい

podman start -a WinApps

2.5. Microsoft Officeをインストールする

ここでRDPでWindows仮想マシンにログインしてMicrosoft Officeをインストールする

2.5.1. FreeRDPの設定ファイルを作成する

compose.yamlにあるとおり、デフォルトのログイン情報は次のようになっている

# ~/.config/winapps/compose.yaml

services:
  windows:
    USERNAME: "MyWindowsUser" # Edit here to set a custom Windows username. The default is 'MyWindowsUser'.
    PASSWORD: "MyWindowsPassword" # Edit here to set a password for the Windows user. The default is 'MyWindowsPassword'.

独自のWinappsの設定ファイル(compose.yaml)と同じ場所に上記の情報を反映したFreeRDPの設定ファイルを作成する

winapps]$ vi ~/.config/winapps/winapps.conf
# ~/.config/winapps/winapps.conf
RDP_USER="MyWindowsUser"
RDP_PASS="MyWindowsPassword"
WAFLAVOR="podman"
# 日本語Microsoft IMEを指定
RDP_FLAGS="/kbd:layout:0xE0010411"

2.5.2. RDP接続とMicrosoft Officeのインストール

すでにUbuntuのアプリからWindowsが存在しているはずなので、それをクリックするとRDP接続でWindows(GUI)に入ることができる(※2)

ブラウザはMicrosoft Edgeが最初から入っているので、必要に応じてそれを使ってOfficeのプロダクトに合ったインストールを行う

※2)万が一存在しない場合はRDP接続でなく127.0.0.1:8006でブラウザからGUI操作を行えばよい。Windowsアイコンは遅くとも2.6のセットアップ後にはアプリに出現するはずである。次のステップでは仮想マシンからログアウトしていることが求められるため、サインアウトすることを忘れてはならない

2.5.3. (必要に応じて)ローカルアカウントでのログインに切り替える

もしOfficeをインストールする際にMicrosoftアカウントでログインしてしまった場合は、Windows内で以下の設定を行う

「設定」>「アカウント」>「ユーザーの情報」>「アカウントの設定」>「ローカルアカウントでのログインに切り替える」

この際、ローカルアカウントである"MyWindowsUser"のパスワードを再度設定する必要がある

2.6. 仮想マシン内のMicrosoft OfficeをUbuntuに公開する

最後にsetup.shというスクリプトを実行することで仮想マシン内のWindowsアプリをUbuntuのアプリケーションから使えるようにする

winapps]$ ./setup.sh

ユーザーの回答が求められるため、順に回答する(以下はコンソール出力を整形したもの)

Q1. インストールかアンインストールか

Q) Install or uninstall WinApps?
--> Install

Q2. 現在のユーザーのためにセットアップするか、システム全体に向けてセットアップするか

Q) Configure WinApps for the current user '<your user name>' or the whole system?
--> Current User

Q3. サポートされているアプリケーションを自動的にインストールするか、手動で選択するか

Q) Automatically install supported applications or choose manually?
--> Manual (Default)

Q4. 公式のサポートがあるアプリをどうするか

Q) How would you like to handle officially supported applications?
--> Choose specific officially supported applications to set up
(特定のアプリケーションをセットアップする)

以下のものを選択する:

  • Explorer: 仮想マシン内のフォルダアクセスのために公開する
  • Powerpoint(Word、Excel等も同じ): 本記事の肝となるアプリ

Q5. 検知された他のアプリケーションはどうするか

Q) How would you like to handle other detected applications?
--> Select which applications to set up
(どのアプリケーションをセットアップするか選択する)

この中には特にめぼしいものはないと思うが、読者の好みで選んでほしい(筆者はPaintを入れている)

3. Ubuntuのアプリから起動できることを確認する

最後に、Ubuntuの「アプリ」から上記で公開したMicrosoft Officeが選べることを確認する

exported_applications.png

ドックにピン留めして使うこともできる

image.png

注)もしダブルクリックしても起動しない場合は、ブラウザ経由で仮想マシンにログインしていることが考えられる原因の一つであるため、ブラウザの方をサインアウトして再試行するとよい

Appendix A. UbuntuとWindowsの共有フォルダの設定

デフォルトではUbuntuの${HOME}がWindowsから\\host.lan\Dataとしてアクセスできるが、compose.yamlを編集してホームディレクトリ以外を共有フォルダにすることもできる

windows_shared_folder.png

例えば以下のようにWindows用に作ったフォルダにしてもよい

# ~/.config/winapps/compose.yaml

service:
  windows:
    volumes:
      - data:/storage # Mount volume 'data' to use as Windows 'C:' drive.
      # ${HOME} -> Your favorite directory, e.g., ${HOME}/Development/Windows
      - ${HOME}/Development/Windows:/shared # Mount Linux user home directory @ '\\host.lan\Data'.

Appendix B. 参考文献

  1. https://gist.github.com/eylenburg/38e5da371b7fedc0662198efc66be57b
  2. https://github.com/dockur/windows/tree/master
  3. https://github.com/winapps-org/winapps
  4. https://github.com/awakecoding/FreeRDP-Manuals/blob/master/User/FreeRDP-User-Manual.markdown
  5. https://askubuntu.com/questions/1452418/how-can-i-install-the-dialog-package
2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?