HomebrewにGTK+2用のGlade3を導入する
現状
- 2018.6.10 現在、Homebrewでインストールされる glade と pygtk は、以下のようにGTK+のバージョンが合わない。
- glade 3.22.1 GTK+3
- pygtk 2.24.0 GTK+2
- Glade2 + PyGTK2 で書かれた過去のソフトウェアをメンテナンスするために…
- Glade2形式のファイルからGtkBuilderに移行して、Glade3で編集できるようにしたい。
- コストを考慮してGTK+3への移行はしたくない。
獲得目標
- HomebrewでGTK+2対応のGlade3を使えるようにする。
方法
- GladeがGTK+2をターゲットにしていたのはバージョン3.8までなので、gladeのFormulaを参考に3.8系列の最新版(現時点で3.8.6)をインストールできるようにする。
すんなりいかなかった点
- glade3-3.8.6のコードが、gtk-mac-integrationの最新版の変数名、関数名の変更をフォローしていなかったため、Formula内でinreplaceを用いて改変する必要があった。
できあがったFormula
- 余計な記述などリファクタリングの余地はあると思われるが、取り敢えず動く。
glade38.rb
class Glade38 < Formula
desc "RAD tool for the GTK+ and GNOME environment"
homepage "https://glade.gnome.org/"
url "http://ftp.gnome.org/pub/GNOME/sources/glade3/3.8/glade3-3.8.6.tar.xz"
sha256 "aaeeebffaeb3068fb23757a2eede46adeb4c7cecc740feed7654e065491f5449"
revision 1
depends_on "pkg-config" => :build
depends_on "intltool" => :build
depends_on "itstool" => :build
depends_on "docbook-xsl" => :build
depends_on "gobject-introspection" => :build
depends_on "gettext"
depends_on "libxml2"
depends_on "adwaita-icon-theme"
depends_on "hicolor-icon-theme"
depends_on "gtk+"
depends_on "gtk-mac-integration"
def install
# Find our docbook catalog
ENV["XML_CATALOG_FILES"] = "#{etc}/xml/catalog"
system "./configure", "--disable-debug",
"--disable-dependency-tracking",
"--prefix=#{prefix}",
"--enable-gladeui",
"--enable-introspection"
inreplace "src/glade-window.c" do |s|
s.gsub! "GtkOSXApplication", "GtkosxApplication"
s.gsub! "GTK_TYPE_OSX_APPLICATION", "GTKOSX_TYPE_APPLICATION"
s.gsub! "gtk_osxapplication_", "gtkosx_application_"
end
system "make" # separate steps required
system "make", "install"
end
test do
system "false"
end
end
簡単に利用するには
- 私のリポジトリをタップして使うこともできます
Terminal.app
$ brew tap naito/ecell
$ brew install glade38
- glade 3.22.1 GTK+3
- pygtk 2.24.0 GTK+2
- Glade2形式のファイルからGtkBuilderに移行して、Glade3で編集できるようにしたい。
- コストを考慮してGTK+3への移行はしたくない。
- HomebrewでGTK+2対応のGlade3を使えるようにする。
方法
- GladeがGTK+2をターゲットにしていたのはバージョン3.8までなので、gladeのFormulaを参考に3.8系列の最新版(現時点で3.8.6)をインストールできるようにする。
すんなりいかなかった点
- glade3-3.8.6のコードが、gtk-mac-integrationの最新版の変数名、関数名の変更をフォローしていなかったため、Formula内でinreplaceを用いて改変する必要があった。
できあがったFormula
- 余計な記述などリファクタリングの余地はあると思われるが、取り敢えず動く。
glade38.rb
class Glade38 < Formula
desc "RAD tool for the GTK+ and GNOME environment"
homepage "https://glade.gnome.org/"
url "http://ftp.gnome.org/pub/GNOME/sources/glade3/3.8/glade3-3.8.6.tar.xz"
sha256 "aaeeebffaeb3068fb23757a2eede46adeb4c7cecc740feed7654e065491f5449"
revision 1
depends_on "pkg-config" => :build
depends_on "intltool" => :build
depends_on "itstool" => :build
depends_on "docbook-xsl" => :build
depends_on "gobject-introspection" => :build
depends_on "gettext"
depends_on "libxml2"
depends_on "adwaita-icon-theme"
depends_on "hicolor-icon-theme"
depends_on "gtk+"
depends_on "gtk-mac-integration"
def install
# Find our docbook catalog
ENV["XML_CATALOG_FILES"] = "#{etc}/xml/catalog"
system "./configure", "--disable-debug",
"--disable-dependency-tracking",
"--prefix=#{prefix}",
"--enable-gladeui",
"--enable-introspection"
inreplace "src/glade-window.c" do |s|
s.gsub! "GtkOSXApplication", "GtkosxApplication"
s.gsub! "GTK_TYPE_OSX_APPLICATION", "GTKOSX_TYPE_APPLICATION"
s.gsub! "gtk_osxapplication_", "gtkosx_application_"
end
system "make" # separate steps required
system "make", "install"
end
test do
system "false"
end
end
簡単に利用するには
- 私のリポジトリをタップして使うこともできます
Terminal.app
$ brew tap naito/ecell
$ brew install glade38
- glade3-3.8.6のコードが、gtk-mac-integrationの最新版の変数名、関数名の変更をフォローしていなかったため、Formula内でinreplaceを用いて改変する必要があった。
できあがったFormula
- 余計な記述などリファクタリングの余地はあると思われるが、取り敢えず動く。
glade38.rb
class Glade38 < Formula
desc "RAD tool for the GTK+ and GNOME environment"
homepage "https://glade.gnome.org/"
url "http://ftp.gnome.org/pub/GNOME/sources/glade3/3.8/glade3-3.8.6.tar.xz"
sha256 "aaeeebffaeb3068fb23757a2eede46adeb4c7cecc740feed7654e065491f5449"
revision 1
depends_on "pkg-config" => :build
depends_on "intltool" => :build
depends_on "itstool" => :build
depends_on "docbook-xsl" => :build
depends_on "gobject-introspection" => :build
depends_on "gettext"
depends_on "libxml2"
depends_on "adwaita-icon-theme"
depends_on "hicolor-icon-theme"
depends_on "gtk+"
depends_on "gtk-mac-integration"
def install
# Find our docbook catalog
ENV["XML_CATALOG_FILES"] = "#{etc}/xml/catalog"
system "./configure", "--disable-debug",
"--disable-dependency-tracking",
"--prefix=#{prefix}",
"--enable-gladeui",
"--enable-introspection"
inreplace "src/glade-window.c" do |s|
s.gsub! "GtkOSXApplication", "GtkosxApplication"
s.gsub! "GTK_TYPE_OSX_APPLICATION", "GTKOSX_TYPE_APPLICATION"
s.gsub! "gtk_osxapplication_", "gtkosx_application_"
end
system "make" # separate steps required
system "make", "install"
end
test do
system "false"
end
end
簡単に利用するには
- 私のリポジトリをタップして使うこともできます
Terminal.app
$ brew tap naito/ecell
$ brew install glade38
glade38.rb
class Glade38 < Formula
desc "RAD tool for the GTK+ and GNOME environment"
homepage "https://glade.gnome.org/"
url "http://ftp.gnome.org/pub/GNOME/sources/glade3/3.8/glade3-3.8.6.tar.xz"
sha256 "aaeeebffaeb3068fb23757a2eede46adeb4c7cecc740feed7654e065491f5449"
revision 1
depends_on "pkg-config" => :build
depends_on "intltool" => :build
depends_on "itstool" => :build
depends_on "docbook-xsl" => :build
depends_on "gobject-introspection" => :build
depends_on "gettext"
depends_on "libxml2"
depends_on "adwaita-icon-theme"
depends_on "hicolor-icon-theme"
depends_on "gtk+"
depends_on "gtk-mac-integration"
def install
# Find our docbook catalog
ENV["XML_CATALOG_FILES"] = "#{etc}/xml/catalog"
system "./configure", "--disable-debug",
"--disable-dependency-tracking",
"--prefix=#{prefix}",
"--enable-gladeui",
"--enable-introspection"
inreplace "src/glade-window.c" do |s|
s.gsub! "GtkOSXApplication", "GtkosxApplication"
s.gsub! "GTK_TYPE_OSX_APPLICATION", "GTKOSX_TYPE_APPLICATION"
s.gsub! "gtk_osxapplication_", "gtkosx_application_"
end
system "make" # separate steps required
system "make", "install"
end
test do
system "false"
end
end
- 私のリポジトリをタップして使うこともできます
Terminal.app
$ brew tap naito/ecell
$ brew install glade38
Author And Source
この問題について(HomebrewにGTK+2用のGlade3を導入する), 我々は、より多くの情報をここで見つけました https://qiita.com/ynaito/items/875141547837d5b416b2著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .