タグ別アーカイブ: Ubuntu

Ubuntu…

第418回 Ubuntu GNOME 16.04 LTSの変更点:Ubuntu Weekly Recipe|gihyo.jp … 技術評論社

何コレ、標準 Ubuntu って Gedit 3.18 にメニューバーを付けたの?
プラグインはどうすんのよ、メニューバーが無い前提で作っているのに。

筆者は公開プラグインや作り方ページは Ubuntu 未サポートって追記した。
標準の奴はなんとかしているだろうけど、多分。

動作確認するためだけに ISO を落とすなんて絶対にやらないyo。
変えるかフォークでもして別名にしてくれないとマジで困るんだが。

ついでに少し古いけど。

“Ubuntu on Windows”搭載の「Windows 10 Insider Preview」Build 14316が登場 – 窓の杜

ココで言う bash って、いわゆるシェルではなくアプリケーションのようです。
実行パーミッションという概念が無いので shebang も使えないですし。
ls -a は Windows の隠しファイルでなくドットファイルのままだったりして。

せめて Mac の open -a コマンドみたいな、、、
何をやるにもフルパスが必要な OS 仕様ではそれも無理だよなぁ。
使い道がまったく思いつかない。

Canonical は何がしたいのだろう?

GTK+ on Ubuntu 14.10

Ubuntu 14.10 が出たので Live を試す。
GTK+ 3.12 のようだが GNOME アプリは全部 3.10 のままだった。

ubuntu1410_gedit

Gedit 3.12 がどうなったか知っているよね。
Apps/Gedit/Screenshots – GNOME Wiki!

Gedit 3.12 向け自作プラグインのテストに使おうと思っていたけど当てが外れた。
Fedora がメインなので 3.12 をすっ飛ばしている状態なのよ。

DistroWatch.com: Ubuntu GNOME
GNOME 版さえ Nautilus 3.10 のまんまカヨ…
Fedora 21 を素直に待つことにする。

それより GMenu と GtkHeaderBar への対応はどうなった?
USB メモリに以下のコードを書いた Python ソースを入れてと。

#!/usr/bin/env python3

import sys
from gi.repository import Gtk, Gio

"""
    GtkHeaderBar on Ubuntu 14.10
    It is enabled.
"""

class Win(Gtk.ApplicationWindow):
    def __init__(self, app):
        Gtk.ApplicationWindow.__init__(self, application=app)
        # Back-Forward Button
        back = Gtk.Button.new_from_icon_name("go-previous-symbolic", Gtk.IconSize.MENU)
        forw = Gtk.Button.new_from_icon_name("go-next-symbolic", Gtk.IconSize.MENU)
        back.set_valign(Gtk.Align.CENTER)
        forw.set_valign(Gtk.Align.CENTER)
        # Back-Forward Containers
        npbox = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, 0)
        Gtk.StyleContext.add_class (npbox.get_style_context(), "linked")
        npbox.pack_start(back, False, False, 0)
        npbox.pack_start(forw, False, False, 0)
        # GtkHeaderBar
        hbar = Gtk.HeaderBar()
        hbar.pack_start(npbox)
        hbar.set_show_close_button(True)
        self.set_titlebar(hbar)
        self.resize(200, 200)
        self.show_all()

class App(Gtk.Application):
    def __init__(self):
        Gtk.Application.__init__(self)

    def do_activate(self):
        self.window.present()

    def do_startup(self):
        Gtk.Application.do_startup(self)
        # AppMenu
        menu = Gio.Menu()
        menu.append("Quit", "app.quit")
        self.set_app_menu(menu)
        # option "quit"
        quit_action = Gio.SimpleAction.new("quit", None)
        quit_action.connect("activate", self.on_quit)
        self.add_action(quit_action)
        self.window = Win(self)
 
    def on_quit(self, action, parameter):
        self.quit()
 
if __name__ == "__main__":
    app = App()
    app.run(sys.argv)

ubuntu1410_hbar

リサイズも移動も可能になっている、密かに対応していたのか。
ただし閉じるボタン位置は左にはならないみたいね。
アプリケーションメニューは Unknown Application Name のまま。

中途半端だなぁ、使えるようになったのは素直に喜ばしいけど。
まだまだ Ubuntu で GTK+ はイケそうに思うけど。

2014年10月17日号 小型ARMデスクトップ“imp”・14.10のFinal Beta・“POODLE”攻撃・OSC Tokyo/Fall・UWN#387:Ubuntu Weekly Topics|gihyo.jp … 技術評論社

次期版 Unity デスクトップは独自 SDK + Qt5 になる。
つまり Android のように Linux ベースだけど専用 API 必須になる???
タッチ無しのデスクトップ環境限定なら Qt アプリは問題なく動くと思うけど。
GTK+ はどうなんだろう?

とはいえ。

updateman

今も相変わらず Python, GTK+ に頼りまくっているようですけど。
本家も 14.04 を勧めているし移行まで中途半端なままだろうね。

GtkHeaderBar の為だけにインストールするのもなぁ。
本当に全然新しくなっていないので Ubuntu 系ブロガーは頭が痛いかも。

Gtk+ 3.10 on Ubuntu 14.04

Ubuntu 14.04 が出たが Fedora な筆者はどうでも…よくない。
GtkHeaderBar や GtkStackSwitcher は Unity 環境ではどうなるか確認せねば。
使用感とかは他人に任せてと。

筆者が書いた下記サンプルコードで試してみる。
GTK+ 3.10 – L’Isola di Niente

gtkheaderbar

GtkHeaderBar はそのまま使えるけど標準とは異なるものになってしまう。
つまり標準の Nautilus とかは改造しているということだったのか。

それに枠に影がなくなるのでウインドウが重なると境界が解らない。
更に最大化しても上部バーと一体化せず一段下へと標準とは異なる動作に。
というか、リサイズできなくなる。

なんだよ、つまり GtkHeaderBar は使えないということじゃないか。
詰めが甘いのか意図的なのかは解らないけど。
GtkStack, GtkStackSwitcher, GtkListBox は問題なく使えるようです。

GtkHeaderBar and GStreamer | PaePoi

GTK+ 3.10 なのだからこの動画の画面が出ない症状は同じだった。
いや GNOME だと真っ黒だけど Unity だと透明になる、音だけなのは同じ。
でも Totem 3.12 は GtkHeaderBar 採用になっているんだよな。
このあたりは Fedora 21 の時に。

appmenu

ApplicationMenu は GNOME と同様になるようにしたようです。
なのに何故か Nautilus 等のメニューバーは古いものを採用。

nautilus_gnome

menubar_ubuntu

同じ Nautilus 3.10.1 のはずなのに何だよこの違い。
というかこれなら 3.8 のままでいいじゃないか、と思うのだが。

他にも GNOME 3.10 を知っている人ならツッコミ所が多々。
3.10 で GtkStackSwitcher になった部分が全部 GtkNotebook に変更って。
ユニバーサルアクセス設定等の GtkListBox も同様、これは古いアプリのまま?
GtkHeaderBar 以外は特に問題ないのに何故古いままな UI に戻すやら。

他にも GNOME がボタンをアイコン化した部分等も何故か文字列ボタンに戻している。
GNOME プロジェクトの成果物に昔ながらの UI をわざわざ被せた感じ。
おかしいな、Unity ってタッチパネル向けに振った UI じゃなかったか?

独自にやっていたらベースの GNOME アプリ側もやってきたので色々あるだろうけど。
3.12 は Gedit も Totem も GtkHeaderBar になるんだが、どうするのだろう。

当面 GTK+ アプリは Unity 環境専用ビルドを別途で用意する必要あり。
なんて嫌だぞこのやろう。

Middle Button Click to OLE DnD

「中クリックでペースト」よ、さようなら? | スラッシュドット・ジャパン オープンソース

今頃知ったけど次の Fedora から中ボタンクリックができなくなるのか。
筆者もたまに使うけど無いなら無いでそんなに困るわけじゃないけど。

下のほうをみると Firefox で Ctrl+V なんて人がいる。
chrome しか使わないから知らなかったけど Firefox はアドレスバーでなくてもいいのね。

まてよ、それなら OLE ドラッグアンドドロップ(以下 DnD)が使えるんじゃないの?

Gedit に適当な URL を書いて選択し Firefox に DnD する。
普通に移動した、なんだよ左ボタンだけでイケるじゃん。

chrome でできないのは痛いな。
まてよ、タブバーにドロップすればいいんでないの?

ole_dnd

できちゃった、中ボタンクリックいらないや!
Firefox もこの方法なら新規タブになる、筆者は狐を使わないけど。

ついでに、Wordpress 投稿画面の textbox なんかにも Gedit から DnD できるよと。

Lubuntu 13.10 GStreamer and cairo

Lubuntu で PyGI から GStreamer を使うには

Ubuntu ? パッケージのファイル一覧: gir1.2-gstreamer-1.0/quantal/amd64
Ubuntu ? パッケージのファイル一覧: gir1.2-gst-plugins-base-1.0/raring/amd64

を Synaptic から導入すればいい。

lubuntu_gst_and_gstaudio

と思ったけど Python3 から利用すると cairo 関連パッケージが足りない。
コードで利用していなくても PyGI が利用するのでエラーになる。
というか Python2 でも足りないので cairo での描写ができないんですけど…

もう Canonical が Python3 に移行しろと言っているので Python2 は無視して。

python3-cairo
python3-gi-cairo
libpython3.3

も必要、この 3 つがないと cairo で何も描写できない。
線や図形の描写 – L’Isola di Niente

lubuntu_cairo

んで肝心の GStreamer デコーダー(プラグイン)はインストール時に
「サードパーティーうんたら」のチェックで全部入るはずなんだが
libav, bad, base, ugly があるのに何故か good が無い。

gstreamer1.0-plugins-good (gstreamer1.0-x が依存で入る)

も必要、一番肝心なプラグインが無いってどうよ。
コレが無くても PCManFM や MPlayer では問題ないんですけどね。
Nautilus や Totem が GStreamer を使う素の Ubuntu はキチンと入るのか?

これで Lubuntu 13.10 にて Python から cairo, GStreamer を使う環境完成。
皆軽さで LXDE を選んでいるはずだから最小限にしたいですよね。
アプリの依存関係で既に入っている場合もあるよと一応。

urusai

何故かソケットエラーが出るけど再生自体は問題なく可能。
2D 描写しかできない Lubuntu でもなんとか開発はできそう。

#############################################

それと LXDE 等の GTK2 ベースデスクトップだと
/usr/share/pixmaps
にアイコンを入れないとインストールで認識しないのねん。
忘れていた、うーんどうしよう。