Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 92 lines 1.7 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchFromGitHub, 5 fetchpatch, 6 nix-update-script, 7 meson, 8 ninja, 9 pkg-config, 10 polkit, 11 vala, 12 wrapGAppsHook3, 13 editorconfig-core-c, 14 granite, 15 gtk3, 16 gtksourceview4, 17 gtkspell3, 18 libgee, 19 libgit2-glib, 20 libhandy, 21 libpeas2, 22 libsoup_3, 23 vte, 24 ctags, 25}: 26 27stdenv.mkDerivation rec { 28 pname = "elementary-code"; 29 version = "8.0.0"; 30 31 src = fetchFromGitHub { 32 owner = "elementary"; 33 repo = "code"; 34 rev = version; 35 hash = "sha256-muW7K9cFITZaoNi3id+iplmokN5sSE8x1CVQ62+myUU="; 36 }; 37 38 patches = [ 39 # Fix build with GCC 14 40 # https://github.com/elementary/code/pull/1606 41 (fetchpatch { 42 url = "https://github.com/elementary/code/commit/9b8347adcbb94f3186815413d927eecc51be2ccf.patch"; 43 hash = "sha256-VhpvWgOGniOEjxBOjvX30DZIRGalxfPlb9j1VaOAJTA="; 44 }) 45 ]; 46 47 strictDeps = true; 48 49 nativeBuildInputs = [ 50 meson 51 ninja 52 pkg-config 53 polkit # needed for ITS rules 54 vala 55 wrapGAppsHook3 56 ]; 57 58 buildInputs = [ 59 editorconfig-core-c 60 granite 61 gtk3 62 gtksourceview4 63 gtkspell3 64 libgee 65 libgit2-glib 66 libhandy 67 libpeas2 68 libsoup_3 69 vala # for ValaSymbolResolver provided by libvala 70 vte 71 ]; 72 73 # ctags needed in path by outline plugin 74 preFixup = '' 75 gappsWrapperArgs+=( 76 --prefix PATH : "${lib.makeBinPath [ ctags ]}" 77 ) 78 ''; 79 80 passthru = { 81 updateScript = nix-update-script { }; 82 }; 83 84 meta = with lib; { 85 description = "Code editor designed for elementary OS"; 86 homepage = "https://github.com/elementary/code"; 87 license = licenses.gpl3Plus; 88 platforms = platforms.linux; 89 teams = [ teams.pantheon ]; 90 mainProgram = "io.elementary.code"; 91 }; 92}