Skip to content

Commit

Permalink
Merge pull request #74387 from jtojnar/geany-clean-up
Browse files Browse the repository at this point in the history
geany: clean up and switch to GTK3
  • Loading branch information
jtojnar committed Dec 7, 2019
2 parents 3c57673 + 615a5a3 commit c7db566
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 23 deletions.
45 changes: 30 additions & 15 deletions pkgs/applications/editors/geany/default.nix
@@ -1,36 +1,51 @@
{ stdenv, fetchurl, gtk2, which, pkgconfig, intltool, file, libintl, hicolor-icon-theme }:

with stdenv.lib;

let
version = "1.36";
in
{ stdenv
, fetchurl
, gtk3
, which
, pkgconfig
, intltool
, file
, libintl
, hicolor-icon-theme
, wrapGAppsHook
}:

stdenv.mkDerivation rec {
pname = "geany";
inherit version;
version = "1.36";

outputs = [ "out" "dev" "doc" "man" ];

src = fetchurl {
url = "https://download.geany.org/${pname}-${version}.tar.bz2";
sha256 = "0gnm17cr4rf3pmkf0axz4a0fxwnvp55ji0q0lzy88yqbshyxv14i";
};

nativeBuildInputs = [ pkgconfig intltool libintl ];
buildInputs = [ gtk2 which file hicolor-icon-theme ];
nativeBuildInputs = [
pkgconfig
intltool
libintl
which
file
hicolor-icon-theme
wrapGAppsHook
];

buildInputs = [
gtk3
];

doCheck = true;

enableParallelBuilding = true;

patchPhase = "patchShebangs .";

meta = {
meta = with stdenv.lib; {
description = "Small and lightweight IDE";
longDescription = ''
Geany is a small and lightweight Integrated Development Environment.
It was developed to provide a small and fast IDE, which has only a few dependencies from other packages.
Another goal was to be as independent as possible from a special Desktop Environment like KDE or GNOME.
Geany only requires the GTK2 runtime libraries.
Geany only requires the GTK runtime libraries.
Some basic features of Geany:
- Syntax highlighting
- Code folding
Expand All @@ -45,7 +60,7 @@ stdenv.mkDerivation rec {
- Simple project management
- Plugin interface
'';
homepage = https://www.geany.org/;
homepage = "https://www.geany.org/";
license = licenses.gpl2;
maintainers = with maintainers; [ frlan ];
platforms = platforms.all;
Expand Down
32 changes: 24 additions & 8 deletions pkgs/applications/editors/geany/with-vte.nix
@@ -1,8 +1,24 @@
{ runCommand, makeWrapper, geany, gnome2 }:
let name = builtins.replaceStrings ["geany-"] ["geany-with-vte-"] geany.name;
in
runCommand name { nativeBuildInputs = [ makeWrapper ]; inherit (geany.meta); } "
mkdir -p $out
ln -s ${geany}/share $out
makeWrapper ${geany}/bin/geany $out/bin/geany --prefix LD_LIBRARY_PATH : ${gnome2.vte}/lib
"
{ symlinkJoin
, makeWrapper
, geany
, lndir
, vte
}:

symlinkJoin {
name = "geany-with-vte-${geany.version}";

# TODO: add geany-plugins
paths = with geany; [ out doc man ];

nativeBuildInputs = [ makeWrapper ];

postBuild = ''
# need to replace the directory since it is a symlink
rm -r $out/bin; mkdir $out/bin
makeWrapper ${geany}/bin/geany $out/bin/geany \
--prefix LD_LIBRARY_PATH : ${vte}/lib
'';

inherit (geany.meta);
}

0 comments on commit c7db566

Please sign in to comment.