nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at devShellTools-shell 87 lines 2.1 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchurl, 5 gtk3, 6 which, 7 pkg-config, 8 intltool, 9 file, 10 libintl, 11 hicolor-icon-theme, 12 python3, 13 wrapGAppsHook3, 14}: 15 16stdenv.mkDerivation (finalAttrs: { 17 pname = "geany"; 18 version = "2.1"; 19 20 outputs = [ 21 "out" 22 "dev" 23 "doc" 24 "man" 25 ]; 26 27 src = fetchurl { 28 url = "https://download.geany.org/geany-${finalAttrs.version}.tar.bz2"; 29 hash = "sha256-a5aohERjMAwQuWkqCl7a2CNu7J6ENC9XX4PU/IkzEig="; 30 }; 31 32 patches = [ 33 # The test runs into UB in headless environments and crashes at least on headless Darwin. 34 # Remove if https://github.com/geany/geany/pull/3676 is merged (or the issue fixed otherwise). 35 ./disable-test-sidebar.patch 36 ]; 37 38 nativeBuildInputs = [ 39 pkg-config 40 intltool 41 libintl 42 which 43 file 44 hicolor-icon-theme 45 python3 46 wrapGAppsHook3 47 ]; 48 49 buildInputs = [ gtk3 ]; 50 51 preCheck = '' 52 patchShebangs --build tests/ctags/runner.sh 53 patchShebangs --build scripts 54 ''; 55 56 doCheck = true; 57 58 enableParallelBuilding = true; 59 60 meta = with lib; { 61 description = "Small and lightweight IDE"; 62 longDescription = '' 63 Geany is a small and lightweight Integrated Development Environment. 64 It was developed to provide a small and fast IDE, which has only a few dependencies from other packages. 65 Another goal was to be as independent as possible from a special Desktop Environment like KDE or GNOME. 66 Geany only requires the GTK runtime libraries. 67 Some basic features of Geany: 68 - Syntax highlighting 69 - Code folding 70 - Symbol name auto-completion 71 - Construct completion/snippets 72 - Auto-closing of XML and HTML tags 73 - Call tips 74 - Many supported filetypes including C, Java, PHP, HTML, Python, Perl, Pascal (full list) 75 - Symbol lists 76 - Code navigation 77 - Build system to compile and execute your code 78 - Simple project management 79 - Plugin interface 80 ''; 81 homepage = "https://www.geany.org/"; 82 license = licenses.gpl2Plus; 83 maintainers = with maintainers; [ frlan ]; 84 platforms = platforms.all; 85 mainProgram = "geany"; 86 }; 87})