This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

tools.mutt: use nixpkgs elinks, drop pkgs.elinks

+1 -177
-173
pkgs/elinks/package.nix
··· 1 - # Replacement for nixpkgs's `elinks`, switched to the meson build from 2 - # upstream nixpkgs PR #515347 (https://github.com/NixOS/nixpkgs/pull/515347). 3 - # 4 - # nixpkgs's autotools build of elinks 0.19.1 is broken against gettext 5 - # 0.23.1 (autopoint refuses `AM_GNU_GETTEXT` without an `external` 6 - # argument; further, autoheader then fails on `HAVE_ALLOCA`). The PR 7 - # sidesteps autotools entirely. We carry it locally until it lands. 8 - # 9 - # The PR also moves a few entries from `buildInputs` to 10 - # `propagatedBuildInputs` on libcss and libdom so they're picked up 11 - # transitively. Rather than overlaying those packages globally, we 12 - # tweak them inline here (only this elinks build sees the change). 13 - { 14 - lib, 15 - stdenv, 16 - fetchFromGitHub, 17 - ncurses, 18 - bzip2, 19 - zlib, 20 - brotli, 21 - zstd, 22 - xz, 23 - openssl, 24 - meson, 25 - ninja, 26 - gettext, 27 - python3, 28 - perl, 29 - pkg-config, 30 - xmlto, 31 - docbook_xml_dtd_42, 32 - gpm, 33 - libidn2, 34 - tre, 35 - expat, 36 - lua, 37 - curl, 38 - libcss, 39 - libdom, 40 - libparserutils, 41 - libwapcaplet, 42 - libhubbub, 43 - enableGuile ? false, 44 - guile ? null, 45 - enablePython ? false, 46 - python ? null, 47 - enablePerl ? (!stdenv.hostPlatform.isDarwin) && (stdenv.hostPlatform == stdenv.buildPlatform), 48 - nix-update-script, 49 - }: 50 - 51 - let 52 - # libcss with libparserutils/libwapcaplet propagated, so meson's 53 - # pkg-config lookup finds them when elinks links against libcss. 54 - libcss' = libcss.overrideAttrs (old: { 55 - buildInputs = lib.filter (d: d != libparserutils && d != libwapcaplet) (old.buildInputs or [ ]); 56 - propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ 57 - libparserutils 58 - libwapcaplet 59 - ]; 60 - }); 61 - 62 - # libdom: libhubbub/libwapcaplet propagated, for the same reason. 63 - libdom' = libdom.overrideAttrs (old: { 64 - buildInputs = lib.filter (d: d != libhubbub && d != libwapcaplet) (old.buildInputs or [ ]); 65 - propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) ++ [ 66 - libhubbub 67 - libwapcaplet 68 - ]; 69 - }); 70 - in 71 - stdenv.mkDerivation (finalAttrs: { 72 - pname = "elinks"; 73 - version = "0.20.0"; 74 - 75 - src = fetchFromGitHub { 76 - owner = "rkd77"; 77 - repo = "elinks"; 78 - rev = "v${finalAttrs.version}"; 79 - hash = "sha256-oh9nArQ8dkYL4fLSjnnCHbSnxNxJnQmAWD/6Nu7OiiQ="; 80 - }; 81 - 82 - outputs = [ 83 - "out" 84 - "man" 85 - "doc" 86 - ]; 87 - 88 - buildInputs = [ 89 - ncurses 90 - bzip2 91 - zlib 92 - brotli 93 - zstd 94 - xz 95 - openssl 96 - libidn2 97 - tre 98 - expat 99 - lua 100 - curl 101 - libcss' 102 - libdom' 103 - ] 104 - ++ lib.optional stdenv.hostPlatform.isDarwin gettext 105 - ++ lib.optional enableGuile guile 106 - ++ lib.optional enablePython python 107 - ++ lib.optional enablePerl perl; 108 - 109 - nativeBuildInputs = [ 110 - meson 111 - ninja 112 - gettext 113 - perl 114 - python3 115 - pkg-config 116 - xmlto 117 - ]; 118 - 119 - env = 120 - lib.optionalAttrs stdenv.hostPlatform.isLinux { 121 - C_INCLUDE_PATH = "${lib.getInclude gpm}/include"; 122 - LIBRARY_PATH = "${lib.getLib gpm}/lib"; 123 - } 124 - // lib.optionalAttrs stdenv.hostPlatform.isDarwin { 125 - LDFLAGS = "-liconv"; 126 - }; 127 - 128 - strictDeps = true; 129 - __structuredAttrs = true; 130 - 131 - mesonFlags = 132 - (map (f: lib.mesonBool f true) [ 133 - "finger" 134 - "html-highlight" 135 - "gopher" 136 - "gemini" 137 - "cgi" 138 - "nntp" 139 - "256-colors" 140 - "true-color" 141 - "brotli" 142 - "lzma" 143 - "terminfo" 144 - "reproducible" 145 - ]) 146 - ++ [ 147 - (lib.mesonOption "luapkg" "lua") 148 - (lib.mesonBool "gpm" stdenv.hostPlatform.isLinux) 149 - (lib.mesonBool "guile" enableGuile) 150 - (lib.mesonBool "python" enablePython) 151 - (lib.mesonBool "perl" enablePerl) 152 - ]; 153 - 154 - postPatch = '' 155 - patchShebangs doc/tools 156 - substituteInPlace doc/tools/asciidoc/docbook.conf \ 157 - --replace-fail "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" "${docbook_xml_dtd_42}/xml/dtd/docbook/docbookx.dtd" 158 - ''; 159 - 160 - preConfigure = '' 161 - mesonFlags+=("-Dsource-date-epoch=$SOURCE_DATE_EPOCH") 162 - ''; 163 - 164 - passthru.updateScript = nix-update-script { extraArgs = [ "--flake" ]; }; 165 - 166 - meta = { 167 - description = "Full-featured text-mode web browser (meson build, PR #515347)"; 168 - mainProgram = "elinks"; 169 - homepage = "https://github.com/rkd77/elinks"; 170 - license = lib.licenses.gpl2Only; 171 - platforms = with lib.platforms; linux ++ darwin; 172 - }; 173 - })
+1 -4
tools/mutt/flake-module.nix
··· 12 12 let 13 13 notmuchConfig = self.packages.${system}.notmuch.passthru.configuration.configFile.path; 14 14 15 - # nixpkgs's autotools elinks is broken against gettext 0.23.1. 16 - # Use our local meson build (pkgs/elinks) until upstream PR 17 - # #515347 lands. 18 - elinks = self.packages.${system}.elinks; 15 + inherit (pkgs) elinks; 19 16 20 17 # Generate virtual-mailboxes from Maildir folder structure at build time 21 18 # This discovers sieve folders dynamically — no hardcoded list needed