diff options
Diffstat (limited to 'pkgs/oregano')
| -rw-r--r-- | pkgs/oregano/check-cfg-gio-unix.patch | 12 | ||||
| -rw-r--r-- | pkgs/oregano/default.nix | 75 |
2 files changed, 87 insertions, 0 deletions
diff --git a/pkgs/oregano/check-cfg-gio-unix.patch b/pkgs/oregano/check-cfg-gio-unix.patch new file mode 100644 index 0000000..a20bf0d --- /dev/null +++ b/pkgs/oregano/check-cfg-gio-unix.patch @@ -0,0 +1,12 @@ +diff --git a/wscript b/wscript +index 03de4b3..f64ccc4 100644 +--- a/wscript ++++ b/wscript +@@ -68,6 +68,7 @@ def configure(conf): + + conf.check_cfg(atleast_pkgconfig_version='0.26') + conf.check_cfg(package='glib-2.0', uselib_store='GLIB', args=['glib-2.0 >= 2.44', '--cflags', '--libs'], mandatory=True) ++ conf.check_cfg(package='gio-unix-2.0', uselib_store='GLIB', args=['--cflags', '--libs'], mandatory=True) + conf.check_cfg(package='gobject-2.0', uselib_store='GOBJECT', args=['--cflags', '--libs'], mandatory=True) + conf.check_cfg(package='gtk+-3.0', uselib_store='GTK3', args=['gtk+-3.0 >= 3.12', '--cflags', '--libs'], mandatory=True) + conf.check_cfg(package='libxml-2.0', uselib_store='XML', args=['--cflags', '--libs'], mandatory=True) diff --git a/pkgs/oregano/default.nix b/pkgs/oregano/default.nix new file mode 100644 index 0000000..14108d5 --- /dev/null +++ b/pkgs/oregano/default.nix @@ -0,0 +1,75 @@ +{ + fetchFromGitHub, + glib, + goocanvas2, + gnucap, + groff, + gtk3, + gtksourceview, + intltool, + libxml2, + lib, + makeWrapper, + ngspice, + perl, + pkg-config, + python3, + stdenv, + wafHook, + wrapGAppsHook, + useNgspice ? false, +}: let + version = "0.84.43"; +in + stdenv.mkDerivation { + pname = "oregano"; + inherit version; + + src = fetchFromGitHub { + owner = "drahnr"; + repo = "oregano"; + rev = "v${version}"; + hash = "sha256-1GsL0N3O0clqdgkXoPKMhvW+y4Rzg4QSeOA54nH4kz4="; + }; + + nativeBuildInputs = [makeWrapper wafHook wrapGAppsHook]; + patches = [./check-cfg-gio-unix.patch]; + + buildInputs = [ + glib + goocanvas2 + groff + gtk3 + gtksourceview + intltool + libxml2 + perl + pkg-config + python3 + ]; + + postFixup = '' + wrapProgram $out/bin/oregano \ + --suffix PATH : ${lib.makeBinPath [ + ( + if useNgspice + then ngspice + else gnucap + ) + ]} + ''; + + meta = with lib; { + description = "Schematic capture and circuit simulator"; + longDescription = '' + Oregano is an application for schematic capture and simulation of + electronic circuits. The actual simulation is performed by Berkeley + Spice, GNUcap or the new generation ngspice. + ''; + + homepage = "https://github.com/drahnr/oregano/"; + license = licenses.gpl2; + platforms = lib.platforms.linux; + maintainers = with maintainers; [_3442]; + }; + } |
