Branch: refs/heads/master
Author: Jiří Techet <techet(a)gmail.com>
Committer: Jiří Techet <techet(a)gmail.com>
Date: Sat, 02 Nov 2019 20:04:52 UTC
Commit: 5012a08b32ffbf291e538ffa7b77a11fa3c58a43
https://github.com/geany/geany-osx/commit/5012a08b32ffbf291e538ffa7b77a11fa…
Log Message:
-----------
Generate the icns file every time bundle is created
Modified Paths:
--------------
.gitignore
Geany.icns
README.md
bundle.sh
Modified: .gitignore
1 lines changed, 1 insertions(+), 0 deletions(-)
===================================================================
@@ -1,4 +1,5 @@
Geany*.app
Geany*.dmg
+Geany.icns
Launcher/geany/build/
xcuserdata/
Modified: Geany.icns
0 lines changed, 0 insertions(+), 0 deletions(-)
===================================================================
No diff available, check online
Modified: README.md
11 lines changed, 1 insertions(+), 10 deletions(-)
===================================================================
@@ -20,14 +20,11 @@ A brief description of the contents of the project directory:
* *Mojave-light-solid*: Mojave GTK 3 Theme
* *Papirus, Papirus-Dark*: Papirus GTK 3 icon theme with lots of unneeded
icons removed to save space.
-* *iconbuilder.iconset*: contains source icons for the Geany.icns
- file. Not needed for normal build, present just in case the icns file
- needs to be recreated for some reason.
+* *iconbuilder.iconset*: contains source icons for the bundle.
* *patches*: various patches fixing dependencies to enable bundling.
* *utils*: various utility scripts.
### Configuration files
-* *Geany.icns*: Mac OS Geany icon file.
* *Info.plist*: Mac OS application configuration file containing some basic
information such as application name, version, etc. but also additional
configuration including file types the application can open.
@@ -202,12 +199,6 @@ have to be performed during normal bundle/installer creation:
and run the script. Copy the output of the script to the marked
place in `Info.plist`.
-* The `Geany.icns` icon file can be regenerated from the `iconbuilder.iconset`
- directory using
- ```
- iconutil -c icns ./iconbuilder.iconset
- ```
-
* Before the release update the Geany version and copyright years inside
`Info.plist` and `create_dmg.sh`. Also update the `-release` targets in
`geany.modules` file to point to the new release. Dependencies inside
Modified: bundle.sh
1 lines changed, 1 insertions(+), 0 deletions(-)
===================================================================
@@ -1,4 +1,5 @@
#!/bin/sh
+iconutil -c icns ./iconbuilder.iconset --output Geany.icns
~/.local/bin/gtk-mac-bundler geany.bundle
cp -R Papirus Papirus-Dark ./Geany.app/Contents/Resources/share/icons
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
Branch: refs/heads/master
Author: Jiří Techet <techet(a)gmail.com>
Committer: Jiří Techet <techet(a)gmail.com>
Date: Sat, 02 Nov 2019 18:25:30 UTC
Commit: d1669a484af609f587f05952a3dbf9755100fdf3
https://github.com/geany/geany-osx/commit/d1669a484af609f587f05952a3dbf9755…
Log Message:
-----------
Add a helper script to create the app bundle
Modified Paths:
--------------
README.md
bundle.sh
Modified: README.md
29 lines changed, 6 insertions(+), 23 deletions(-)
===================================================================
@@ -37,6 +37,7 @@ A brief description of the contents of the project directory:
* *settings.ini*: default theme configuration file for GTK 3.
### Scripts
+* *bundle.sh*: script creating the app bundle.
* *create_dmg.sh*: script calling create-dmg to create the dmg installer
image.
* *notarize.sh*: script for notarizing the dmg using Apple notary service.
@@ -66,31 +67,24 @@ To create the bundle, you need to first install JHBuild and GTK as described bel
on your system).
2. Get `gtk-osx-setup.sh` by
-
```
curl -L -o gtk-osx-setup.sh https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/gtk-osx-setup.sh
```
-
and run it:
-
```
sh gtk-osx-setup.sh
```
3. Run
-
```
export PATH=$PATH:"$HOME/.new_local/bin"
```
-
to set path to jhbuild installed in the previous step.
4. Update the `setup_sdk()` call in `~/.jhbuildrc-custom` to something like
-
```
setup_sdk(target="10.9", sdk_version="native", architectures=["x86_64"])
```
-
so the build creates a 64-bit binary that works on OS X 10.9 and later.
OS X 10.9 is the first version which uses libc++ by default which is
now required by Scintilla and VTE libraries because of C++11 support.
@@ -130,8 +124,8 @@ Bundling
```
xcodebuild -project Launcher/geany/geany.xcodeproj
```
-2. Run
+2. Run
```
jhbuild shell
```
@@ -146,33 +140,26 @@ Bundling
and copy the `colorschemes` directory under `$PREFIX/share/geany`.
4. Inside the `geany-osx` directory run the following command to create
- the app bundle.
+ the app bundle:
```
- ~/.local/bin/gtk-mac-bundler geany.bundle
+ ./bundle.sh
```
-5. Go to the `geany-osx` directory and copy the icon theme to the bundle:
- ```
- cp -R Papirus Papirus-Dark ./Geany.app/Contents/Resources/share/icons
- ```
-
-6. Optionally, if you have a development account at Apple and want to sign the
+5. Optionally, if you have a development account at Apple and want to sign the
resulting bundle so it can be started without warning dialogs, use
-
```
export SIGN_CERTIFICATE="your certificate name"
```
The certificate should be installed in your login keychain. You can get the
- certificate name by running
+ certificate name by running
```
security find-identity -p codesigning
```
and checking for "Developer ID Application" - the whole name in apostrophes is
the certificate name.
Then, run
-
```
./sign.sh
```
@@ -187,11 +174,9 @@ Distribution
and put it to your `$PATH`.
2. Create the dmg installation image by calling
-
```
./create_dmg.sh
```
-
from within the `geany-osx` directory. If the `SIGN_CERTIFICATE` variable is
defined, the image gets signed by the specified certificate.
@@ -219,7 +204,6 @@ have to be performed during normal bundle/installer creation:
* The `Geany.icns` icon file can be regenerated from the `iconbuilder.iconset`
directory using
-
```
iconutil -c icns ./iconbuilder.iconset
```
@@ -231,7 +215,6 @@ have to be performed during normal bundle/installer creation:
* To make sure nothing is left from the previous build when making a
new release, run
-
```
rm -rf .new_local Source gtk .cache/jhbuild
```
Modified: bundle.sh
4 lines changed, 4 insertions(+), 0 deletions(-)
===================================================================
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+~/.local/bin/gtk-mac-bundler geany.bundle
+cp -R Papirus Papirus-Dark ./Geany.app/Contents/Resources/share/icons
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
Branch: refs/heads/master
Author: Jiří Techet <techet(a)gmail.com>
Committer: Jiří Techet <techet(a)gmail.com>
Date: Sat, 02 Nov 2019 18:05:40 UTC
Commit: f82a058ff7857c65ca165e045c06a7c7eb7c8a99
https://github.com/geany/geany-osx/commit/f82a058ff7857c65ca165e045c06a7c7e…
Log Message:
-----------
Improve description of files/directories in the bundle
Modified Paths:
--------------
README.md
Modified: README.md
21 lines changed, 11 insertions(+), 10 deletions(-)
===================================================================
@@ -15,31 +15,32 @@ Files and Directories
A brief description of the contents of the project directory:
### Directories
-* *Papirus*: Papirus GTK 3 icon theme with lots of unneeded icons
- removed to save space.
+* *Launcher*: A binary launcher which is used to set up environment
+ variables to run Geany.
* *Mojave-light-solid*: Mojave GTK 3 Theme
+* *Papirus, Papirus-Dark*: Papirus GTK 3 icon theme with lots of unneeded
+ icons removed to save space.
* *iconbuilder.iconset*: contains source icons for the Geany.icns
file. Not needed for normal build, present just in case the icns file
needs to be recreated for some reason.
* *patches*: various patches fixing dependencies to enable bundling.
-* *Launcher*: A binary launcher which is used to set up environment
- variables to run Geany.
+* *utils*: various utility scripts.
### Configuration files
-* *geany.modules*: JHBuild modules file with Geany dependencies.
-* *geany.bundle*: configuration file describing the contents of the app bundle.
+* *Geany.icns*: Mac OS Geany icon file.
* *Info.plist*: Mac OS application configuration file containing some basic
information such as application name, version, etc. but also additional
configuration including file types the application can open.
-* *Geany.icns*: Mac OS Geany icon file.
+* *geany.bundle*: configuration file describing the contents of the app bundle.
+* *geany.entitlements*: runtime hardening entitlements file.
+* *geany.modules*: JHBuild modules file with Geany dependencies.
* *settings.ini*: default theme configuration file for GTK 3.
### Scripts
-* *plist_filetypes.py*: script generating the file type portion of the
- Info.plist file from Geany's filetype_extensions.conf configuration
- file.
* *create_dmg.sh*: script calling create-dmg to create the dmg installer
image.
+* *notarize.sh*: script for notarizing the dmg using Apple notary service.
+* *sign.sh*: script signing the app bundle.
General Instructions
--------------------
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
Branch: refs/heads/master
Author: Jiří Techet <techet(a)gmail.com>
Committer: Jiří Techet <techet(a)gmail.com>
Date: Sat, 02 Nov 2019 17:58:58 UTC
Commit: 784b9e8ccf3a5f15da59575525eaafcc3cc29ba7
https://github.com/geany/geany-osx/commit/784b9e8ccf3a5f15da59575525eaafcc3…
Log Message:
-----------
Move plist_filetypes.py to utils
Modified Paths:
--------------
README.md
utils/plist_filetypes.py
Modified: README.md
2 lines changed, 1 insertions(+), 1 deletions(-)
===================================================================
@@ -212,7 +212,7 @@ have to be performed during normal bundle/installer creation:
* To get the `Info.plist` file associations in sync with
`filetype_extensions.conf`, copy the filetype extension portion from
- `filetype_extensions.conf` to the marked place in `plist_filetypes.py`
+ `filetype_extensions.conf` to the marked place in `utils/plist_filetypes.py`
and run the script. Copy the output of the script to the marked
place in `Info.plist`.
Modified: utils/plist_filetypes.py
0 lines changed, 0 insertions(+), 0 deletions(-)
===================================================================
No diff available, check online
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
Branch: refs/heads/master
Author: Jiří Techet <techet(a)gmail.com>
Committer: Jiří Techet <techet(a)gmail.com>
Date: Sat, 02 Nov 2019 17:55:39 UTC
Commit: cd22945b7cc836f390f9731052e2ba1df22fb8b6
https://github.com/geany/geany-osx/commit/cd22945b7cc836f390f9731052e2ba1df…
Log Message:
-----------
Remove GTK2 stuff
Modified Paths:
--------------
.gitignore
COPYING
Launcher/geany/geany.xcodeproj/project.pbxproj
Launcher/geany/geany.xcodeproj/project.xcworkspace/contents.xcworkspacedata
Launcher/geany/geany.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
Launcher/geany/geany/main.m
README.md
geany-gtk2.bundle
geany.bundle
geany.modules
launcher-gtk2.sh
launcher-gtk3.sh
patches/01-vte_0.28_fix.patch
patches/02-vte_0.28_relpath.patch
Modified: .gitignore
2 lines changed, 1 insertions(+), 1 deletions(-)
===================================================================
@@ -1,4 +1,4 @@
Geany*.app
Geany*.dmg
-LauncherGtk3/geany/build/
+Launcher/geany/build/
xcuserdata/
Modified: COPYING
10 lines changed, 1 insertions(+), 9 deletions(-)
===================================================================
@@ -1,19 +1,11 @@
geany-osx contains parts from other projects which are licensed under
their original licenses:
-Faience icon theme:
- GPLv3
- https://www.deviantart.com/tiheum/art/Faience-icon-theme-255099649
-
Papirus icon theme:
LGPLv3
https://github.com/PapirusDevelopmentTeam/papirus-icon-theme
-Greybird GTK2 theme:
- dual-licensed as GPLv2 or later and CC-BY-SA 3.0 or later
- https://github.com/shimmerproject/Greybird
-
-Mojave GTK3 Theme:
+Mojave GTK Theme:
GPLv2
https://github.com/vinceliuice/Mojave-gtk-theme
Modified: Launcher/geany/geany.xcodeproj/project.pbxproj
0 lines changed, 0 insertions(+), 0 deletions(-)
===================================================================
No diff available, check online
Modified: Launcher/geany/geany.xcodeproj/project.xcworkspace/contents.xcworkspacedata
0 lines changed, 0 insertions(+), 0 deletions(-)
===================================================================
No diff available, check online
Modified: Launcher/geany/geany.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
0 lines changed, 0 insertions(+), 0 deletions(-)
===================================================================
No diff available, check online
Modified: Launcher/geany/geany/main.m
0 lines changed, 0 insertions(+), 0 deletions(-)
===================================================================
No diff available, check online
Modified: README.md
101 lines changed, 34 insertions(+), 67 deletions(-)
===================================================================
@@ -15,34 +15,26 @@ Files and Directories
A brief description of the contents of the project directory:
### Directories
-* *Faience*: Faience GTK 2 icon theme combined with Faenza-Cupertino
- icon theme (for better folder icons) and with lots of unneeded icons
- removed to save space.
* *Papirus*: Papirus GTK 3 icon theme with lots of unneeded icons
removed to save space.
-* *Greybird*: Greybird GTK 2 theme which has been modified to look more
- like Mac OS.
* *Mojave-light-solid*: Mojave GTK 3 Theme
* *iconbuilder.iconset*: contains source icons for the Geany.icns
file. Not needed for normal build, present just in case the icns file
needs to be recreated for some reason.
-* *patches*: patches fixing VTE under Mac OS and enabling VTE bundling.
-* *LauncherGtk3*: A binary launcher which is used to set up environment
+* *patches*: various patches fixing dependencies to enable bundling.
+* *Launcher*: A binary launcher which is used to set up environment
variables to run Geany.
### Configuration files
* *geany.modules*: JHBuild modules file with Geany dependencies.
-* *geany-gtk2.bundle, geany-gtk3.bundle*: configuration files describing
- the contents of the app bundle.
+* *geany.bundle*: configuration file describing the contents of the app bundle.
* *Info.plist*: Mac OS application configuration file containing some basic
information such as application name, version, etc. but also additional
configuration including file types the application can open.
* *Geany.icns*: Mac OS Geany icon file.
-* *settings.ini*: theme configuration file for GTK 3.
+* *settings.ini*: default theme configuration file for GTK 3.
### Scripts
-* *launcher-gtk2.sh, launcher-gtk3.sh*: launcher script from the
- gtk-mac-bundler project setting all the necessary environment variables.
* *plist_filetypes.py*: script generating the file type portion of the
Info.plist file from Geany's filetype_extensions.conf configuration
file.
@@ -105,55 +97,37 @@ To create the bundle, you need to first install JHBuild and GTK as described bel
5. By default, jhbuild compiles without optimization flags. To enable
optimization, add `setup_release()` at the end of `~/.jhbuildrc-custom`.
-6. Install GTK and all of its dependencies by running one of the following
- commands:
- * **GTK 2**
- ```
- jhbuild bootstrap-gtk-osx && jhbuild build meta-gtk-osx-freetype meta-gtk-osx-bootstrap meta-gtk-osx-core
- ```
- * **GTK 3**
- ```
- jhbuild bootstrap-gtk-osx && jhbuild build meta-gtk-osx-freetype meta-gtk-osx-bootstrap meta-gtk-osx-gtk3
- ```
- This is the moment when you have to make a decision whether to build
- Geany with GTK 2 or GTK 3 - they cannot be installed side by side.
+6. Install GTK and all of its dependencies by running the following
+ command:
+ ```
+ jhbuild bootstrap-gtk-osx && jhbuild build meta-gtk-osx-freetype meta-gtk-osx-bootstrap meta-gtk-osx-gtk3
+ ```
Geany Installation
------------------
1. Docutils will fail if you do not set the following environment variables:
-
```
export LC_ALL=en_US.UTF-8; export LANG=en_US.UTF-8; export PYTHON=python3
```
-2. To build Geany, plugins and all of their dependencies, run one of
+2. To build Geany, plugins and all of their dependencies, run one of
the following commands inside the `geany-osx` directory depending on
- the GTK version used and whether to use Geany sources from the latest
- release tarball or current git master:
- * **GTK 2**
- * **Geany from release tarball**
- ```
- jhbuild -m `pwd`/geany.modules build geany-bundle-release-gtk2
- ```
- * **Geany from git master**
- ```
- jhbuild -m `pwd`/geany.modules build geany-bundle-git-gtk2
- ```
- * **GTK 3**
- * **Geany from release tarball**
- ```
- jhbuild -m `pwd`/geany.modules build geany-bundle-release-gtk3
- ```
- * **Geany from git master**
- ```
- jhbuild -m `pwd`/geany.modules build geany-bundle-git-gtk3
- ```
+ whether to use Geany sources from the latest release tarball or current
+ git master:
+ * **Geany from release tarball**
+ ```
+ jhbuild -m `pwd`/geany.modules build geany-bundle-release
+ ```
+ * **Geany from git master**
+ ```
+ jhbuild -m `pwd`/geany.modules build geany-bundle-git
+ ```
Bundling
--------
-1. To build the GTK3 binary launcher, run
+1. To build the binary launcher, run
```
- xcodebuild -project LauncherGtk3/geany/geany.xcodeproj
+ xcodebuild -project Launcher/geany/geany.xcodeproj
```
2. Run
@@ -172,35 +146,28 @@ Bundling
4. Inside the `geany-osx` directory run the following command to create
the app bundle.
- * **GTK 2**
- ```
- ~/.local/bin/gtk-mac-bundler geany-gtk2.bundle
- ```
- * **GTK 3**
- ```
- ~/.local/bin/gtk-mac-bundler geany-gtk3.bundle
- ```
+ ```
+ ~/.local/bin/gtk-mac-bundler geany.bundle
+ ```
5. Go to the `geany-osx` directory and copy the icon theme to the bundle:
- * **GTK 2**
- ```
- cp -R Faience ./Geany.app/Contents/Resources/share/icons
- ```
- * **GTK 3**
- ```
- cp -R Papirus Papirus-Dark ./Geany.app/Contents/Resources/share/icons
- ```
+ ```
+ cp -R Papirus Papirus-Dark ./Geany.app/Contents/Resources/share/icons
+ ```
-6. Optionally if you have a development account at Apple and want to sign the
+6. Optionally, if you have a development account at Apple and want to sign the
resulting bundle so it can be started without warning dialogs, use
```
export SIGN_CERTIFICATE="your certificate name"
```
The certificate should be installed in your login keychain. You can get the
- certificate name by running `security find-identity -p codesigning` and
- checking for "Developer ID Application" - the whole name in apostrophes is
+ certificate name by running
+ ```
+ security find-identity -p codesigning
+ ```
+ and checking for "Developer ID Application" - the whole name in apostrophes is
the certificate name.
Then, run
Modified: geany-gtk2.bundle
194 lines changed, 0 insertions(+), 194 deletions(-)
===================================================================
@@ -1,194 +0,0 @@
-<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
-<app-bundle>
-
- <meta>
- <!-- Where to pick up the GTK+ installation, icon themes,
- etc. Note that "${env:JHBUILD_PREFIX}" is evaluated to the
- value of the environment variable JHBUILD_PREFIX. You can
- define additional prefixes and refer to them in paths
- throughout this file on the form "${prefix:name}". This is
- useful for installing certain libraries or even the
- application itself separately. Note that JHBUILD_PREFIX is
- defined by jhbuild, so it you are not using jhbuild you can
- either define your own or just hardcode the path here.
- -->
- <prefix name="default">${env:JHBUILD_PREFIX}</prefix>
-
- <!-- The project directory is the default location of the created
- app. If you leave out the path, the current directory is
- used. Note the usage of an environment variable here again.
- -->
- <destination overwrite="yes">${project}</destination>
-
- <image>
- <!-- Not implemented yet (DMG image). -->
- </image>
-
- <!-- Comment this out to keep the install names in binaries -->
- <run-install-name-tool/>
-
- <!-- Optionally specify a launcher script to use. If the
- application sets up everything needed itself, like
- environment variable, linker paths, etc, a launcher script is
- not needed. If the source path is left out, the default
- script will be used.
- -->
- <launcher-script>${project}/launcher-gtk2.sh</launcher-script >
-
- <!-- Not implemented: Optional runtime, could be python or mono
- for example.
- -->
- <!-- runtime copy="yes">/usr/bin/python</runtime -->
- <!-- Indicate the active gtk version to use. This is needed only
- for gtk+-3.0 projects. -->
- <gtk>gtk+-2.0</gtk>
- </meta>
-
- <!-- The special macro "${project}" refers to the directory where
- this bundle file is located. The application name and bundle
- identifier are taken from the plist file.
- -->
- <plist>${project}/Info.plist</plist>
-
- <main-binary>${prefix}/bin/geany</main-binary>
-
- <!-- Copy in GTK+ modules. Note the ${gtkdir} macro, which expands
- to the correct library subdirectory for the specified gtk
- version.
- -->
- <binary>
- ${prefix}/lib/${gtkdir}/modules/*.so
- </binary>
-
- <!-- Copy in GTK+ theme engines and print backends. Note the use of the
- "${pkg:module:variable}" macro, which evaluates to a pkg-config
- variable in the specified module. Note that any libraries that
- binaries link to are also copied in automatically. Note also
- the included ${gtk} macro, which gets the correct package name
- to get. -->
- <binary>
- ${prefix}/lib/${gtkdir}/${pkg:${gtk}:gtk_binary_version}/engines/*.so
- </binary>
-
- <binary>
- ${prefix}/lib/${gtkdir}/${pkg:${gtk}:gtk_binary_version}/printbackends/*.so
- </binary>
-
- <binary>
- ${prefix}/lib/${gtkdir}/${pkg:${gtk}:gtk_binary_version}/immodules/*.so
- </binary>
-
-<!-- Starting with 2.24, gdk-pixbuf installs into its own directory. -->
- <binary>
- ${prefix}/lib/gdk-pixbuf-2.0/${pkg:${gtk}:gtk_binary_version}/loaders/*.so
- </binary>
-
- <!-- VTE library -->
- <binary>
- ${prefix}/lib/libvte.9.dylib
- </binary>
- <binary dest="${bundle}/Contents/Resources/libexec/gnome-pty-helper">
- ${prefix}/libexec/gnome-pty-helper
- </binary>
-
- <!-- libenchant modules needed by the spellchecker plugin -->
- <binary>
- ${prefix}/lib/enchant/*.so
- </binary>
-
- <!-- Geany's plugins -->
- <binary>
- ${prefix}/lib/geany/*.so
- </binary>
-
- <!-- Translation filenames, one for each program or library that you
- want to copy in to the bundle. The "dest" attribute is
- optional, as usual. Bundler will find all translations of that
- library/program under the indicated directory and copy them.-->
- <translations name="gtk20">
- ${prefix}/share/locale
- </translations>
- <translations name="vte-0.0">
- ${prefix}/share/locale
- </translations>
- <translations name="geany">
- ${prefix}/share/locale
- </translations>
- <translations name="geany-plugins">
- ${prefix}/share/locale
- </translations>
-
-
- <!-- Data to copy in, usually Glade/UI files, images, sounds files
- etc. The destination inside the bundle can be specified if the
- files should end up at a different location, by using the
- "dest" property. The destination must then start with the macro
- "${bundle}", which refers to the bundle root directory.
- -->
-
- <!-- Geany's data files; glade, fildefs, default tags, etc. -->
- <data>
- ${prefix}/share/geany
- </data>
- <!-- Geany plugin's data files -->
- <data>
- ${prefix}/share/geany-plugins
- </data>
- <!-- Geany documentation -->
- <data>
- ${prefix}/share/doc/geany
- </data>
- <!-- Geany plugin documentation -->
- <data>
- ${prefix}/share/doc/geany-plugins
- </data>
- <!-- VTE config -->
- <data>
- ${prefix}/share/vte
- </data>
- <!-- mime data -->
- <data>
- ${prefix}/share/mime
- </data>
-
- <!-- Copy in the themes data. You may want to trim this to save space
- in your bundle. -->
-
- <!-- This theme contains the right key mappings for OS X -->
- <data>
- ${prefix}/share/themes/Mac
- </data>
-
- <!-- Copy icons. Note that the .icns file is an Apple format which
- contains up to 4 sizes of icon. You can use
- /Developer/Applications/Utilities/Icon Composer.app to import
- artwork and create the file. -->
- <data dest="${bundle}/Contents/Resources">
- ${project}/Geany.icns
- </data>
-
- <!-- This is where theme commands go. You can copy them in from your
- theme of choice if they provide and example, or you can just
- change the source path. -->
-
- <!-- Main gtkrc -->
- <data dest="${bundle}/Contents/Resources/etc/${gtkdir}/gtkrc">
- ${project}/Greybird/gtkrc
- </data>
- <!-- The theme -->
- <data dest="${bundle}/Contents/Resources/etc/${gtkdir}/gtkrc.theme">
- ${project}/Greybird/gtkrc.theme
- </data>
- <!-- Custom (better looking) close button -->
- <data dest="${bundle}/Contents/Resources/etc/${gtkdir}/close.png">
- ${project}/Greybird/close.png
- </data>
-
- <!-- gtk-mac-bundler doesn't copy symlinks of icon themes so let's
- just do the copy manually after the bundle is created
- <data dest="${bundle}/Contents/Resources/share/icons/Faience">
- ${project}/Faience
- </data>
- -->
-
-</app-bundle>
Modified: geany.bundle
0 lines changed, 0 insertions(+), 0 deletions(-)
===================================================================
No diff available, check online
Modified: geany.modules
141 lines changed, 19 insertions(+), 122 deletions(-)
===================================================================
@@ -38,19 +38,6 @@
version="10.33"/>
</autotools>
- <!-- The last version which works with GTK 2 -->
- <autotools id="vte28"
- autogenargs="--disable-Bsymbolic"
- autogen-sh="configure">
- <branch module="vte/0.28/vte-${version}.tar.xz"
- version="0.28.2">
- <!-- Fix for draw -->
- <patch file="https://github.com/geany/geany-osx/raw/master/patches/01-vte_0.28_fix.patch" strip="1" />
- <!-- Make paths relative to bundle (fallback to system paths if not found) -->
- <patch file="https://github.com/geany/geany-osx/raw/master/patches/02-vte_0.28_relpath.p…" strip="1" />
- </branch>
- </autotools>
-
<meson id="vte291" mesonargs="-Dgnutls=false -Dvapi=false -D_b_symbolic_functions=false">
<branch module="vte/0.58/vte-${version}.tar.xz"
version="0.58.2">
@@ -64,13 +51,6 @@
</dependencies>
</meson>
- <!-- Needed by the used GTK 2 theme -->
- <autotools id="murrine-engine"
- autogen-sh="configure">
- <branch module="murrine/0.98/murrine-${version}.tar.xz"
- version="0.98.2"/>
- </autotools>
-
<!-- Used by the git-changebar plugin -->
<cmake id="libgit2"
cmakeargs="-DCMAKE_INSTALL_NAME_DIR=${PREFIX}/lib">
@@ -101,19 +81,7 @@
module="gtk-mac-bundler"/>
</autotools>
- <metamodule id="geany-deps-gtk2">
- <dependencies>
- <dep package="vte28" />
- <dep package="docutils" />
- <dep package="murrine-engine" />
- <dep package="gtk-mac-bundler" />
- <dep package="gtk-mac-integration-fixed" />
- <!-- mime information for g_content_type_guess() -->
- <dep package="shared-mime-info" />
- </dependencies>
- </metamodule>
-
- <metamodule id="geany-deps-gtk3">
+ <metamodule id="geany-deps">
<dependencies>
<dep package="vte291" />
<dep package="docutils" />
@@ -125,44 +93,20 @@
</dependencies>
</metamodule>
- <!-- Geany GTK 2 from git master -->
- <autotools id="geany-git-gtk2"
- autogenargs="--enable-mac-integration">
- <branch repo="github.com"
- module="geany/geany.git"
- checkoutdir="geany-git"
- revision="master" />
- <dependencies>
- <dep package="geany-deps-gtk2" />
- </dependencies>
- </autotools>
-
- <!-- Geany GTK 3 from git master -->
- <autotools id="geany-git-gtk3"
+ <!-- Geany from git master -->
+ <autotools id="geany-git"
autogenargs="--enable-mac-integration --enable-gtk3">
<branch repo="github.com"
module="geany/geany.git"
checkoutdir="geany-git"
revision="master" />
<dependencies>
- <dep package="geany-deps-gtk3" />
- </dependencies>
- </autotools>
-
- <!-- Geany GTK 2 tarball release -->
- <autotools id="geany-release-gtk2"
- autogenargs="--enable-mac-integration">
- <branch repo="download.geany.org"
- module="geany-${version}.tar.bz2"
- checkoutdir="geany-${version}"
- version="1.36"/>
- <dependencies>
- <dep package="geany-deps-gtk2" />
+ <dep package="geany-deps" />
</dependencies>
</autotools>
- <!-- Geany GTK 3 tarball release -->
- <autotools id="geany-release-gtk3"
+ <!-- Geany tarball release -->
+ <autotools id="geany-release"
autogenargs="--enable-mac-integration --enable-gtk3">
<branch repo="download.geany.org"
module="geany-${version}.tar.bz2"
@@ -174,34 +118,13 @@
<patch file="https://github.com/geany/geany-osx/raw/master/patches/02-geany_scintilla_im…" strip="1" />
</branch>
<dependencies>
- <dep package="geany-deps-gtk3" />
+ <dep package="geany-deps" />
</dependencies>
</autotools>
- <!-- Geany-plugins dependencies GTK 2 -->
- <metamodule id="geany-plugins-deps">
- <dependencies>
- <dep package="vala" />
- <dep package="libgit2" />
- <dep package="enchant" />
- </dependencies>
- </metamodule>
-
- <!-- Geany-plugins GTK 2 from git master -->
- <autotools id="geany-plugins-git-gtk2">
- <branch repo="github.com"
- module="geany/geany-plugins.git"
- checkoutdir="geany-plugins-git"
- revision="master" />
- <dependencies>
- <dep package="geany-git-gtk2" />
- <dep package="geany-plugins-deps" />
- </dependencies>
- </autotools>
-
- <!-- Geany-plugins GTK 3 from git master -->
+ <!-- Geany-plugins from git master -->
<!-- TODO: remove supports-non-srcdir-builds when fixed -->
- <autotools id="geany-plugins-git-gtk3"
+ <autotools id="geany-plugins-git"
supports-non-srcdir-builds="no">
<branch repo="github.com"
module="geany/geany-plugins.git"
@@ -213,62 +136,36 @@
<patch file="https://github.com/geany/geany-osx/raw/master/patches/02-geany_scintilla_im…" strip="1" />
</branch>
<dependencies>
- <dep package="geany-git-gtk3" />
- <dep package="geany-plugins-deps" />
- </dependencies>
- </autotools>
-
- <!-- Geany-plugins GTK 2 tarball release -->
- <autotools id="geany-plugins-release-gtk2">
- <branch repo="download.geany.org"
- module="geany-plugins/geany-plugins-${version}.tar.bz2"
- checkoutdir="geany-plugins-${version}"
- version="1.36"/>
- <dependencies>
- <dep package="geany-release-gtk2" />
+ <dep package="geany-git" />
<dep package="geany-plugins-deps" />
</dependencies>
</autotools>
- <!-- Geany-plugins GTK 3 tarball release -->
+ <!-- Geany-plugins tarball release -->
<!-- TODO: remove supports-non-srcdir-builds when fixed -->
- <autotools id="geany-plugins-release-gtk3"
+ <autotools id="geany-plugins-release"
supports-non-srcdir-builds="no">
<branch repo="download.geany.org"
module="geany-plugins/geany-plugins-${version}.tar.bz2"
checkoutdir="geany-plugins-${version}"
version="1.36"/>
<dependencies>
- <dep package="geany-release-gtk3" />
+ <dep package="geany-release" />
<dep package="geany-plugins-deps" />
</dependencies>
</autotools>
- <!-- Build everything necessary for Geany bundle from git on GTK 2 -->
- <metamodule id="geany-bundle-git-gtk2">
- <dependencies>
- <dep package="geany-plugins-git-gtk2" />
- </dependencies>
- </metamodule>
-
- <!-- Build everything necessary for Geany bundle from git on GTK 3 -->
- <metamodule id="geany-bundle-git-gtk3">
- <dependencies>
- <dep package="geany-plugins-git-gtk3" />
- </dependencies>
- </metamodule>
-
- <!-- Build everything necessary for Geany bundle from release tarballs GTK 2 -->
- <metamodule id="geany-bundle-release-gtk2">
+ <!-- Build everything necessary for Geany bundle from git -->
+ <metamodule id="geany-bundle-git">
<dependencies>
- <dep package="geany-plugins-release-gtk2" />
+ <dep package="geany-plugins-git" />
</dependencies>
</metamodule>
- <!-- Build everything necessary for Geany bundle from release tarballs GTK 3 -->
- <metamodule id="geany-bundle-release-gtk3">
+ <!-- Build everything necessary for Geany bundle from release tarballs -->
+ <metamodule id="geany-bundle-release">
<dependencies>
- <dep package="geany-plugins-release-gtk3" />
+ <dep package="geany-plugins-release" />
</dependencies>
</metamodule>
Modified: launcher-gtk2.sh
88 lines changed, 0 insertions(+), 88 deletions(-)
===================================================================
@@ -1,88 +0,0 @@
-#!/bin/bash -l
-
-if test "x$GTK_DEBUG_LAUNCHER" != x; then
- set -x
-fi
-
-if test "x$GTK_DEBUG_GDB" != x; then
- EXEC="gdb --args"
-else
- EXEC=exec
-fi
-
-ORIG_DIR=`pwd`
-
-# simulate readlink -f which isn't present on OS X
-TARGET_FILE=$0
-cd `dirname $TARGET_FILE`
-TARGET_FILE=`basename $TARGET_FILE`
-while [ -L "$TARGET_FILE" ]
-do
- TARGET_FILE=`readlink $TARGET_FILE`
- cd `dirname $TARGET_FILE`
- TARGET_FILE=`basename $TARGET_FILE`
-done
-PHYS_DIR=`pwd -P`
-
-cd "$ORIG_DIR"
-
-tmp=$PHYS_DIR/$TARGET_FILE
-name=`basename "$tmp"`
-tmp=`dirname "$tmp"`
-tmp=`dirname "$tmp"`
-bundle=`dirname "$tmp"`
-bundle_contents="$bundle"/Contents
-bundle_res="$bundle_contents"/Resources
-bundle_lib="$bundle_res"/lib
-bundle_bin="$bundle_res"/bin
-bundle_data="$bundle_res"/share
-bundle_etc="$bundle_res"/etc
-
-export XDG_CONFIG_DIRS="$bundle_etc"
-export XDG_DATA_DIRS="$bundle_data"
-export GTK_DATA_PREFIX="$bundle_res"
-export GTK_EXE_PREFIX="$bundle_res"
-export GTK_PATH="$bundle_res"
-
-export GTK2_RC_FILES="$bundle_etc/gtk-2.0/gtkrc"
-export GTK_IM_MODULE_FILE="$bundle_etc/gtk-2.0/gtk.immodules"
-#N.B. When gdk-pixbuf was separated from Gtk+ the location of the
-#loaders cache changed as well. Depending on the version of Gtk+ that
-#you built with you may still need to use the old location:
-#export GDK_PIXBUF_MODULE_FILE="$bundle_etc/gtk-2.0/gdk-pixbuf.loaders"
-export GDK_PIXBUF_MODULE_FILE="$bundle_lib/gdk-pixbuf-2.0/2.10.0/loaders.cache"
-export PANGO_LIBDIR="$bundle_lib"
-export PANGO_SYSCONFDIR="$bundle_etc"
-
-if test -e ~/.config/geany/ignore_locale; then
- export LANG="en_US.UTF-8"
-else
- export LANG=`defaults read .GlobalPreferences AppleLocale`
- export LANG="${LANG}.UTF-8"
-fi
-
-export LC_MESSAGES=$LANG
-export LC_MONETARY=$LANG
-export LC_COLLATE=$LANG
-export LC_ALL=$LANG
-
-if test -f "$bundle_lib/charset.alias"; then
- export CHARSETALIASDIR="$bundle_lib"
-fi
-
-# Extra arguments can be added in environment.sh.
-EXTRA_ARGS=
-if test -f "$bundle_res/environment.sh"; then
- source "$bundle_res/environment.sh"
-fi
-
-# Strip out the argument added by the OS.
-if /bin/expr "x$1" : '^x-psn_' > /dev/null; then
- shift 1
-fi
-
-export GEANY_PLUGINS_SHARE_PATH="$bundle_res/share/geany-plugins"
-export ENCHANT_MODULE_PATH="$bundle_lib/enchant"
-export GIO_MODULE_DIR="$bundle_lib/gio/modules"
-
-$EXEC "$bundle_contents/MacOS/$name-bin" "$@" "--vte-lib=$bundle_lib/libvte-2.91.0.dylib" $EXTRA_ARGS
Modified: launcher-gtk3.sh
90 lines changed, 0 insertions(+), 90 deletions(-)
===================================================================
@@ -1,90 +0,0 @@
-#!/bin/bash -l
-
-if test "x$GTK_DEBUG_LAUNCHER" != x; then
- set -x
-fi
-
-if test "x$GTK_DEBUG_GDB" != x; then
- EXEC="gdb --args"
-else
- EXEC=exec
-fi
-
-ORIG_DIR=`pwd`
-
-# simulate readlink -f which isn't present on OS X
-TARGET_FILE=$0
-cd `dirname $TARGET_FILE`
-TARGET_FILE=`basename $TARGET_FILE`
-while [ -L "$TARGET_FILE" ]
-do
- TARGET_FILE=`readlink $TARGET_FILE`
- cd `dirname $TARGET_FILE`
- TARGET_FILE=`basename $TARGET_FILE`
-done
-PHYS_DIR=`pwd -P`
-
-cd "$ORIG_DIR"
-
-tmp=$PHYS_DIR/$TARGET_FILE
-name=`basename "$tmp"`
-tmp=`dirname "$tmp"`
-tmp=`dirname "$tmp"`
-bundle=`dirname "$tmp"`
-bundle_contents="$bundle"/Contents
-bundle_res="$bundle_contents"/Resources
-bundle_lib="$bundle_res"/lib
-bundle_bin="$bundle_res"/bin
-bundle_data="$bundle_res"/share
-bundle_etc="$bundle_res"/etc
-
-export XDG_CONFIG_DIRS="$bundle_etc"
-export XDG_DATA_DIRS="$bundle_data"
-export GTK_DATA_PREFIX="$bundle_res"
-export GTK_EXE_PREFIX="$bundle_res"
-export GTK_PATH="$bundle_res"
-
-export GTK_THEME="Mojave-light-solid"
-
-# PANGO_* is no longer needed for pango >= 1.38
-export PANGO_RC_FILE="$bundle_etc/pango/pangorc"
-export PANGO_SYSCONFDIR="$bundle_etc"
-export PANGO_LIBDIR="$bundle_lib"
-
-export GDK_PIXBUF_MODULE_FILE="$bundle_lib/gdk-pixbuf-2.0/2.10.0/loaders.cache"
-if [ `uname -r | cut -d . -f 1` -ge 10 ]; then
- export GTK_IM_MODULE_FILE="$bundle_etc/gtk-3.0/gtk.immodules"
-fi
-
-if test -e ~/.config/geany/ignore_locale; then
- export LANG="en_US.UTF-8"
-else
- export LANG=`defaults read .GlobalPreferences AppleLocale`
- export LANG="${LANG}.UTF-8"
-fi
-
-export LC_MESSAGES=$LANG
-export LC_MONETARY=$LANG
-export LC_COLLATE=$LANG
-export LC_ALL=$LANG
-
-if test -f "$bundle_lib/charset.alias"; then
- export CHARSETALIASDIR="$bundle_lib"
-fi
-
-# Extra arguments can be added in environment.sh.
-EXTRA_ARGS=
-if test -f "$bundle_res/environment.sh"; then
- source "$bundle_res/environment.sh"
-fi
-
-# Strip out the argument added by the OS.
-if /bin/expr "x$1" : '^x-psn_' > /dev/null; then
- shift 1
-fi
-
-export GEANY_PLUGINS_SHARE_PATH="$bundle_res/share/geany-plugins"
-export ENCHANT_MODULE_PATH="$bundle_lib/enchant"
-export GIO_MODULE_DIR="$bundle_lib/gio/modules"
-
-$EXEC "$bundle_contents/MacOS/$name-bin" "$@" "--vte-lib=$bundle_lib/libvte-2.91.0.dylib" $EXTRA_ARGS
Modified: patches/01-vte_0.28_fix.patch
76 lines changed, 0 insertions(+), 76 deletions(-)
===================================================================
@@ -1,76 +0,0 @@
-From 8477c313f7d4a2eeb5c30c52e2b710b08d52b35c Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Jir=CC=8Ci=CC=81=20Techet?= <techet(a)gmail.com>
-Date: Wed, 11 Feb 2015 00:26:29 +0100
-Subject: [PATCH] Fix VTE 0.28 on OS X
-
-The vte_terminal_expose() implementation is strange. The expose
-function should typically just draw (and this is what vte_terminal_draw(),
-which performs something similar on GTK 3, does - and everything works
-there). However, for some reason vte_terminal_expose() doesn't always
-draw; sometimes it invalidates the visible area, which in turn causes
-vte_terminal_expose() is called again and which invalidates the visible
-area again... and we have a nice infinite cycle without any real draw.
-
-It is a bit mysterious why this works on Linux and not on OS X - I assume
-there is a different timing of events which might arrive in a different order
-and cause this infinite cycle.
-
-The second mysterious thing is why the invalidation code is actually there
-- frankly, I don't know, maybe it's just some leftover from the past. After
-removing the invalidation stuff and doing plain drawing (similarly to the
-GTK 3 draw function), the terminal works again.
----
- src/vte.c | 30 +++---------------------------
- 1 file changed, 3 insertions(+), 27 deletions(-)
-
-diff --git a/src/vte.c b/src/vte.c
-index 695d327..18484a5 100644
---- a/src/vte.c
-+++ b/src/vte.c
-@@ -11309,7 +11309,6 @@ vte_terminal_expose(GtkWidget *widget,
- GdkEventExpose *event)
- {
- VteTerminal *terminal = VTE_TERMINAL (widget);
-- GtkAllocation allocation;
-
- /* Beware the out of order events -
- * do not even think about skipping exposes! */
-@@ -11317,32 +11316,9 @@ vte_terminal_expose(GtkWidget *widget,
- _vte_debug_print (VTE_DEBUG_EVENTS, "Expose (%d,%d)x(%d,%d)\n",
- event->area.x, event->area.y,
- event->area.width, event->area.height);
-- if (terminal->pvt->active != NULL &&
-- update_timeout_tag != 0 &&
-- !in_update_timeout) {
-- /* fix up a race condition where we schedule a delayed update
-- * after an 'immediate' invalidate all */
-- if (terminal->pvt->invalidated_all &&
-- terminal->pvt->update_regions == NULL) {
-- terminal->pvt->invalidated_all = FALSE;
-- }
-- /* if we expect to redraw the widget soon,
-- * just add this event to the list */
-- if (!terminal->pvt->invalidated_all) {
-- gtk_widget_get_allocation (widget, &allocation);
-- if (event->area.width >= allocation.width &&
-- event->area.height >= allocation.height) {
-- _vte_invalidate_all (terminal);
-- } else {
-- terminal->pvt->update_regions =
-- g_slist_prepend (terminal->pvt->update_regions,
-- gdk_region_copy (event->region));
-- }
-- }
-- } else {
-- vte_terminal_paint(widget, event->region);
-- terminal->pvt->invalidated_all = FALSE;
-- }
-+ vte_terminal_paint(widget, event->region);
-+ terminal->pvt->invalidated_all = FALSE;
-+
- return FALSE;
- }
-
---
-2.2.1
-
Modified: patches/02-vte_0.28_relpath.patch
89 lines changed, 0 insertions(+), 89 deletions(-)
===================================================================
@@ -1,89 +0,0 @@
-From 47d939acec1a35f89773a6a727ae7b0cb069445f Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Jir=CC=8Ci=CC=81=20Techet?= <techet(a)gmail.com>
-Date: Thu, 12 Feb 2015 00:25:29 +0100
-Subject: [PATCH] Make VTE independent of installation path when bundling
-
-The wrapper shell script defines the GTK_PATH to point to
-the resources directory - use this path to avoid absolute paths
-in the source.
----
- src/pty.c | 13 +++++++++++--
- src/vte.c | 30 +++++++++++++++++++++++++-----
- 2 files changed, 36 insertions(+), 7 deletions(-)
-
-diff --git a/src/pty.c b/src/pty.c
-index a4c8c07..61c09ff 100644
---- a/src/pty.c
-+++ b/src/pty.c
-@@ -1181,8 +1181,17 @@ _vte_pty_start_helper(GError **error)
- close(tunnel);
- close(_vte_pty_helper_tunnel);
- /* Exec our helper. */
-- execl(LIBEXECDIR "/gnome-pty-helper",
-- "gnome-pty-helper", NULL);
-+ gchar *path = g_build_filename(g_getenv("GTK_PATH"),
-+ "libexec",
-+ "gnome-pty-helper",
-+ NULL);
-+ if (!g_file_test(path, G_FILE_TEST_EXISTS))
-+ {
-+ g_free(path);
-+ path = g_strdup(LIBEXECDIR "/gnome-pty-helper");
-+ }
-+ execl(path, "gnome-pty-helper", NULL);
-+ g_free(path);
- /* Bail. */
- _exit(1);
- }
-diff --git a/src/vte.c b/src/vte.c
-index 18484a5..9b2ce23 100644
---- a/src/vte.c
-+++ b/src/vte.c
-@@ -8272,11 +8272,21 @@ vte_terminal_set_termcap(VteTerminal *terminal, const char *path,
- char *wpath;
-
- if (path == NULL) {
-- wpath = g_build_filename(TERMCAPDIR,
-- terminal->pvt->emulation ?
-- terminal->pvt->emulation :
-- vte_terminal_get_default_emulation(terminal),
-+ wpath = g_build_filename(g_getenv("GTK_PATH"),
-+ "share",
-+ "vte",
-+ "termcap-0.0",
-+ "xterm",
- NULL);
-+ if (!g_file_test(wpath, G_FILE_TEST_EXISTS))
-+ {
-+ g_free(wpath);
-+ wpath = g_build_filename(TERMCAPDIR,
-+ terminal->pvt->emulation ?
-+ terminal->pvt->emulation :
-+ vte_terminal_get_default_emulation(terminal),
-+ NULL);
-+ }
- if (g_stat(wpath, &st) != 0) {
- g_free(wpath);
- wpath = g_strdup("/etc/termcap");
-@@ -11720,7 +11730,17 @@ vte_terminal_class_init(VteTerminalClass *klass)
- }
- #endif
-
-- bindtextdomain(GETTEXT_PACKAGE, LOCALEDIR);
-+ gchar *localedir = g_build_filename(g_getenv("GTK_PATH"),
-+ "share",
-+ "locale",
-+ NULL);
-+ if (!g_file_test(localedir, G_FILE_TEST_IS_DIR))
-+ {
-+ g_free(localedir);
-+ localedir = g_strdup(LOCALEDIR);
-+ }
-+ bindtextdomain(GETTEXT_PACKAGE, localedir);
-+ g_free(localedir);
- #ifdef HAVE_DECL_BIND_TEXTDOMAIN_CODESET
- bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8");
- #endif
---
-2.2.1
-
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).