openSUSEでWINEで東方やってみる

By Syuta Hashimoto @ 2018-12-09 08:29

このブログは「openSUSE AdventCalender 2018」9日目の記事です。

皆さんこんばんわ。橋本修太です。

突然ですが、東方Projectというのをご存知でしょうか。

東方Projectとは、ZUN氏が制作しているWindows用弾幕系シューティングゲームです。あるいは、そのキャラクターや関連コンテンツ等を「東方」と呼んでいます。

私は「妖々夢」「永夜」「風神録」を持っていて、奇跡的に「永夜抄」のノーマルモードを紅魔チームで打開した事がある程度です。

そう、ラインナップを見て頂くとわかるとおり、かなり前にWindowsで遊んだきり。今、どっぷりopenSUSEに浸かっている為、Windowsに切り替えるのは面倒です。

「幽雅に咲かせ、墨染の桜」をまた聞きたい

「妖々夢」のボス曲です。東方は好きな曲が多いです。また幽々子様に会いたい・・・

そこで、WINEの出番です。

WINE

ぶどうを発酵させたアルコール飲料で、私はこれが大好きです・・・では無くて、ITでWINEと言うと、Linux上でWindowsアプリケーションを動作させるプログラム群の事を指します。サイトはこちら

今回目指す事

openSUSEでWINEを使って「妖々夢」をプレイ出来るようにする事を目指します。

やってみた

想定手順

WINEのような複雑なソリューションは、一筋縄では行かないのが世の常。なので、まずは「想定」手順を記載します。

  1. WINEをインストールする
  2. 妖々夢をインストールする
  3. 妖々夢をプレイする

WINEをインストールする

実は、メインマシンのデスクトップでは、既にWINEで他ゲーム(RPGツクール系ランタイムが必要なゲーム等)で遊んでまして、あれこれやった記憶がありますので、ここではまだWINEがインストールされていないノートPCでやってみたいと思います。

では、ノートPCの情報を。

Resuming in non X mode: glxinfo not found. For package install advice run: inxi –recommends
CPU~Dual core Intel Core i5-6200U (-HT-MCP-) speed/max~2400/2800 MHz Kernel~4.12.14-lp150.12.25-default x86
_64 Up~0:38 Mem~7208.8/15952.4MB HDD~1000.2GB(6.7% used) Procs~230 Client~Shell inxi~2.3.40

さっそく、4日目で紹介させて頂いた、inxiを使用しています。他にも、hwinfoやdmidecodeというコマンドもあるので、そちらもおいおい調査したいと思っています。

おや?glxinfoが無いよ、とエラーが出てしまっていますね・・・あしからず。

WINEのインストールは、YaSTで一発です。WINEは複雑な最新版を取得する方法等もいろいろあるのですが、今回はこれで普通に動きましたので(ネタバレ?)、YaSTの標準インストールを行います。

YaST の「ソフトウェア管理」で、「wine」で検索すると表示される一覧から、「wine」を選択します。すると、画面で言うとすぐ下の「wine-32bit」などにもマークが付きますが、これは依存関係を判別して自動でインストールすべきパッケージを選んでくれてますので、このまま「了解」を押して進みましょう。

すると、必要なパッケージをインストールするよ、の一覧が表示されます。結構な量になりますが、インストールしましょう。

さすがに量があるので、少し時間がかかります。私のwifi環境で、パッケージ数111、経過時間6分程、インストールサイズの合計673.56MiB、ダウンロードサイズの合計187.62MiBでした。

・・・インストールサイズとダウンロードサイズの違いってなんでしょう?あと、MiB って?

これらはおいおい調べていくとしまして、まずはWINEインストール完了です。

WINE起動してみる

アプリケーションメニューの「システム」に、「Wine File」がありますので起動してみますと・・・なんか、「wine-monoが無いよ。インストールする?ディストリビューションのものをインストールしたほうがいいけどね」といった感じのメッセージが。とりあえずキャンセル的な方を選んでおきました。デスクトップの方は表示されないんですよね・・インストールしたのかもしれません。

ちなみに、Wine Fileは、エクスプローラーのようにファイル等を見ることが出来るプログラムです。

東方妖々夢をインストールする

東方妖々夢のCDをドライブに入れ、その中にある「install」のファイルをクリックすれば、インストールが始まります。

このままインストールを進めていきましょう。

私は、最後で「デスクトップにショートカットを作成する」で「はい」を選んだのですが、ノートでは上手く表示されませんでした・・・ちなみにデスクトップでは表示されています。

東方妖々夢をプレイする

東方妖々夢のアイコン(?)をクリックしてみましょう。無事、起動しました。

何故かスペクタクル(スクリーンショットユーティリティ)でスクリーンショットを取ることが出来ず・・・

この時ですが、私はいつもUSB接続のコントローラーでプレイするのですが、東方妖々夢起動後に指すと、ずっと下ボタンが繰り返される現象が発生しました。前もって指しておいてから起動する分には、正しく動作しました。

なお、最初はフルスクリーンで起動されますが、ConfigからWindowを選択すれば、Window表示にする事ができます。

久々にプレイ

咲夜でプレイ。チェンでゲームオーバー。「幽雅に咲かせ、墨染の桜」までは遠い・・・まぁ、イージーでやれば・・・いや、イージーが許されるのは小学生までですよね。

という事で、東方を持っている方、是非openSUSEでプレイしてみましょう。

おまけ winetricks

winetricksという、WINEの設定やプログラムインストールを簡単にしてくれるスクリプトがあります。標準で入っているwinetricksには不具合があるので、これは最新版をダウンロードした方が安定するようです。

課題&感想

  • 想定通りの手順でプレイまで完了でうれしい
  • inxiでglxinfoのエラーが出る
  • YaSTでインストールする時の、インストールサイズとダウンロードサイズの違いは?
  • MiBの意味と使いどころ
  • wine-monoの扱い方
  • アイコンが表示されない?
  • スペクタクルでスクリーンショットが撮れない
  • チェンの弾除けは難しいけど出来ると快感

明日は鹿野月美さんによる、openSUSEのWINEで鉄拳7をプレイする記事です。この記事の課題は、きっと鹿野月美さんがぱぱっと解決してくださいます。こうご期待!

 

lxqtでrcloneを使う場合のTIPS

By ribbon @ 2018-12-07 06:42

openSUSE Leap 15.0 では、デスクトップ環境として、lqxtが使えます。lxqt 環境ではブラウザとしてfalkon が入っているのですが、これが少々よろしくありません。rclone を使って Google Drive に繋ぐ場合、ブラウザを使って認証を行うのですが、認証の画面が表示されません。真っ黒なままになります。
lxqt-config を使ってデフォルトのブラウザを変更しても、コンソールから起動する rclone には反映されず、デフォルトとの falkon が起動してしまいます。
この問題を設定ツール等で変更する方法がないか調べたのですが見つかりませんでした。ただ、回避策は見つかりました。rclone を実行しつつ strace で状況を見ていると、 /usr/share/applications/mimeinfo.cache を見に行っていることが分かりました。この中を見ると、

[MIME Cache]
application/gzip=org.kde.ark.desktop;
application/pcx=lximage-qt.desktop;
application/pkcs10=gcr-viewer.desktop;
application/pkcs10+pem=gcr-viewer.desktop;
application/pkcs12=gcr-viewer.desktop;
application/pkcs12+pem=gcr-viewer.desktop;

のように、アプリケーション指定時に動かすものを指定しています。試行錯誤の上、
x-scheme-handler/http=org.kde.falkon.desktop;firefox.desktop;

x-scheme-handler/http=firefox.desktop;org.kde.falkon.desktop;
に変更することで、firefoxを動かすことができました。これで、lxqt環境下でも rclone によるブラウザ認証が正しく行えるようになります。

このブログは「openSUSE Advent Clendar 2018」の5日目の記事です。

皆さんこんばんわ。橋本修太です。

さて、今日はopenSUSEでマルチメディアを使えるようにするTipsです。

なお、この記事は経験則となっております事をご了承下さい。

それでは、結論から。

結論

このページから、KDEならKDE用の、GNOMEならGNOME用の、1-clickインストールを実行しましょう。

一時期、このサイトが使えなかった時もあるようなのですが、今現在、正常に使えています。

現象

openSUSEインストール後、VLC(メディアプレーヤー。動画再生等に使われます。)をインストールしたりして、いざ動画を再生しようとすると、「コーデックがありません」といった類のエラーが出てくる事があります。これは文字通りコーデックが足りていない事を示してます。

コーデック

簡単に言いますと、動画等のデコードやエンコードを行う装置やソフトウェア、そのアルゴリズムを指します。 今回の場合、データから動画や音声に変換したり、その逆を行うライブラリを指しています。

何が問題?

こちらのサイトこちらのサイトに、openSUSEでマルチメディアを使う時に何が問題なのか、まとまっています。特許、ライセンス、といった類の言葉がみられますね。この辺りも、おいおいまとめていきたいと思います。注目すべき点の一つは、「openSUSEでは公式に配布出来ない」ものがある、という事でしょうか。

なお、ライセンスと言えば年明け1月9日にサイオスさんの所で OSSライセンス Meetup が開かれますので、興味のある方は是非。

注意点

ここのページに書かれている注意点として、「マルチメディアパッケージ類は全部Packmanから取得するようにしてね」と書かれています。しかもスクリーンキャプチャ付きでわかりやすく解説されていますので、参考にしてみて下さい。

最後に

ブログを書く前は、ページの文章の翻訳を書こうとか思っていたのですが、いざ書き始めて、ライセンスだのと頭の中で繰り返していると、「はて、これはやっていいことなのかな?」と疑問が湧き出てきて止まらないです・・・これは私もMeetup参加して、一度正しい知識を身につけるべきという事でしょうか。

明日は鹿野月美さんの「openSUSEに自然言語処理な環境構築」の予定です。

言わずと知れた、お〜ぷん万葉の総帥による、自然言語処理な環境構築。お見逃し無く。

openSUSEでハードウェア情報を簡単に取得する

By Syuta Hashimoto @ 2018-12-04 07:29

橋本修太です。

このブログは「openSUSE Advent Clendar 2018」の4日目の記事です。

アドベントカレンダー完走目指して、急遽入れさせて頂きました。

初日から、覆面君さん、川上さん、鹿野月美さんと、レベルの高いブログが続き、私は非常に興奮しております。

が、ここで一息入れさせて頂きましょう。今日の話題はコンソールコマンドです。(タイトル詐欺感はご了承を・・・)

ある日、本家のサポートMLの、コンソールのフォントサイズだかの話題に、以下のような文章が現れました。

【意訳】

「今だったら、皆(バージョンにもよるけど)、vttyの行数、桁数は、次のコマンドで取得できるよ。

inxi -Gxx か、inxi -Fxz でね。」

ここで私は思うわけです。

(inxiってなに?)

というわけで、使ってみました。

使ってみる

さっそく、Leap 15のコンソールで実行。

$ inxi

しかし、こんなメッセージが。

If ‘inxi’ is not a typo you can use command-not-found to lookup the package that contains it, like this: cnf inxi

言わずと知れた、コマンドが無かった時のメッセージですね。

こうなると、次にすることはパッケージの検索。次のコマンドで検索します。

zypper se inxi

すると、該当パッケージが表示されます。これをインストールしましょう。

sudo zypper in inxi

zypperの使い方は、いずれどなたかがアドベントカレンダーしてくれると期待しています。

本題 inxiとは?

実行してみます。

inxi

すると、私の環境では以下のように出力されました。

Resuming in non X mode: glxinfo not found. For package install advice run: inxi –recommends
CPU~Quad core Intel Core i5-2400 (-MCP-) speed/max~3092/3400 MHz Kernel~4.12.14-lp150.12.25-default x86_64
Up~3:22 Mem~2698.9/7952.8MB HDD~1012.2GB(40.4% used) Procs~281 Client~Shell inxi~2.3.40

どうやら、ハードウェア情報を簡単に取得して出力してくれるようです。

マニュアルを見てみますと、

$ man inxi

頭に次のような説明が。

inxi  – Command line system information script for console and IRC

IRC!? それはさておき、システム情報を出力してくれるスクリプトのようですね。

ちなみに、コマンドの場所を確認し、

which inxi

そのコマンドが何かを調べてみますと、

file /usr/bin/inxi

以下のように出力されました。

/usr/bin/inxi: Bourne-Again shell script, UTF-8 Unicode text executable, with very long lines, with escape
sequences

どうやら、シェルスクリプトのようです。思い切って中身を見てみましょう。

less /user/bin/inxi

すると、先頭に見慣れた次の一行が。

#!/usr/bin/env bash

そう、シェルスクリプトの先頭に記述する一行ですね。つまり、inxiはシステム情報を取得・出力してくれる、シェルスクリプトでした。

コマンドを実行した結果の所に、glxinfoが無いよ、といった警告が出ていたことに気付きましたでしょうか。システム情報の収集は、inxiが他のコマンドを呼び出すなりして行う為、そのコマンドが無かったりすると警告となるわけです。

以上、簡単にハードウェア情報(というか、システム情報でしたね)を取得する、inxiコマンドの紹介でした。

MLにあった、inxi -Gxx や、 inxi -Fxz、試してみると面白いですよ。

ううむ、このブログ、inxiの紹介では無くて、見慣れないコマンドを見た時の遊び方のチュートリアルみたいになってしまいましたねぇ。

という事で、近いうちにcnfでも遊びたいと思っています。

 

 

OSC Nagoya 2018 参加報告

By kimitoboku @ 2018-05-22 21:26

5月19日(土)に開催されたOSC名古屋2018に出展しました.

OSC名古屋では,openSUSEが得意とする仮想化環境の構築についてのセミナーを行いました.

また,openSUSEによって構築されたKVM環境にて,GPUとUSBパススールを行い,仮想マシンのWindows10上でVRゲームを行うというデモの展示も行いました.

その他

openSUSE では、Dコンパイラが用意されていて、リポジトリを追加すれば使えるようになります。
リポジトリの情報は
https://software.opensuse.org/download.html?project=devel%3Alanguages%3AD&package=dmdにあります。
ただ、openSUSE 42.3 ではこのままでは動きません。Dコンパイラでコンパイル後、リンクに失敗します。対処法は
https://github.com/skilion/onedrive/issues/252に書いてあるように、phobos-devel-static を追加します。

この記事は LibreOffice Advent Calender の 21日目です。

先日のopenSUSE.Asia Summitでは、次のような名札を作りました。たくさんの人が集まるイベントでは、やっぱり名札があるとよいですね。今回はこの名札を作るまでの過程を紹介します。この名札は、実は背景と名前の部分の2回に分けて印刷しています。以下では、それぞれのパートに分けて紹介します。

openSUSE.Asia Summit の名札

背景

背景部分はLibreOfficeではなく、Scribusで作成しました。今回の名札は「はがきサイズ」で、印刷屋さんに依頼しても200枚1500円以下でオフセット印刷できます。Scribus を使うことで、発注時に必要な裁ち落とし(縁なし印刷)をするための塗り足しを持ち、CNYK カラーの PDF データを出力できます。

Scribus の編集画面

 

出力した PDF データ

名前の差し込み印刷

名前の部分は LibreOffice Writer の差し込み印刷機能を使って印刷データを作成しました。

印刷するデータは Connpass の申し込み情報を CSV にエクスポートして作成した次のようなデータです。1行が1人分のデータになっています。

Name 1 Name 2 Affiliation Registration No
Fuminobu Takeyama ftake Japan openSUSE User Group 10001
Geeko 10002
Foo Bar Foobar Baz 10003

それでは、Writer で差し込み先のデータを作っていきましょう。名札のレイアウトは次のように表を使って作成しました。

LibreOffice Writer で作成した印刷レイアウト

ドキュメント内の < > で囲まれた部分はフィールドで、対応する列の値がこの場所に書き込まれます。このフィールドは次のようにして挿入します。

  1. メニュー: 「挿入」 > 「フィールド」をクリック
  2. 「データベース」タブ > 「差し込み印刷フィールド」をクリック
  3. 「データベースファイルの追加」の「検索」で名札データの表を開く
  4. 「データベースの選択」内に開いた表が現れるので、シート名と列を選択する

差し込み印刷フィールドの挿入

このようにして、4つのフィールド(名前1、ニックネーム、所属、申込番号)を追加します。

次に、データを差し込みます。直接印刷することもできますが、ここでは差し込んだ結果を新しい Writer のドキュメントとして保存します。「表示」> 「ツールバー」>「差し込み印刷」で差し込み印刷ツールバーを表示し、「結合ドキュメントを保存」をクリックします。

結合ドキュメントの保存

そうすると、全員分の名札データが差し込まれた1つのWriterドキュメントができあがります。作業はこれで終わりではなく、ページをチェックして、はみ出ている人がいれば改行位置の調整やフォントサイズの変更を行います。「Japan openSUSE User Group」も長過ぎるのでフォントサイズを小さくしました。

全員分の名前が差し込まれたドキュメント

最後に、このデータを背景が印刷された用紙に普通に印刷すればできあがりです。今回はインクジェットプリンターに対応しないコート紙を使ったため、キンコーズでセルフプリントしました。ただのはがきサイズのドキュメントなので PDF にして USB  メモリーに保存して持っていけば印刷できます。ただ、ページ数が多すぎる場合は、読み込みに時間がかかるため、複数のファイルに分けたほうがよいようです。