# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4

PortSystem          1.0
PortGroup           cargo 1.0
PortGroup           github 1.0

github.setup        lotabout skim 0.9.4 v
revision            1
categories          sysutils
license             MIT
maintainers         {gmail.com:herby.gillot @herbygillot} \
                    openmaintainer
description         Fuzzy Finder in Rust
long_description    Skim is a general fuzzy finder that saves you time. It \
                    works on files, lines and commands. It is blazingly fast \
                    as it reads the data source asynchronously.
checksums           ${distname}${extract.suffix} \
                    rmd160  16b419fd0099f701582d78991e6361106057153c \
                    sha256  5ec639c34c7657be4f7f990e9ad0d8d0a7a979eba68daa7c100126ce06702a1b \
                    size    122373
github.tarball_from archive

patch.dir           ${workpath}

# These are not in fact powerpc-specific, but to build with mrustc:
platform darwin powerpc {
    patchfiles      patch-beef.diff \
                    patch-derive_builder.diff \
                    patch-nix.diff \
                    patch-rayon.diff \
                    patch-skim.diff \
                    patch-time-macros-impl.diff \
                    patch-time-macros.diff
}

set sk_share_dir    ${prefix}/share/${name}

destroot {
    xinstall -m 755 ${worksrcpath}/target/[cargo.rust_platform]/release/sk ${destroot}${prefix}/bin/
    xinstall -m 755 ${worksrcpath}/bin/sk-tmux ${destroot}${prefix}/bin/

    copy {*}[glob ${worksrcpath}/man/man1/*] ${destroot}${prefix}/share/man/man1/

    file mkdir ${destroot}${sk_share_dir}
    copy ${worksrcpath}/shell ${destroot}${sk_share_dir}
}

notes "
skim is installed as \"sk\". Its shell completions can be found in:

    ${sk_share_dir}/shell
"

# TODO: will probably work with rayon 1.5.0, which will allow do drop some duplicate deps.
cargo.crates \
    aho-corasick                    0.7.15  7404febffaa47dac81aa44dba71523c9d069b1bdc50a77db41195149e17f68e5 \
    ansi_term                       0.11.0  ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b \
    arrayref                         0.3.6  a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544 \
    arrayvec                         0.5.2  23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b \
    atty                            0.2.14  d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8 \
    autocfg                          1.0.1  cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a \
    base-x                           0.2.8  a4521f3e3d031370679b3b140beb36dfe4801b09ac77e30c61941f97df3ef28b \
    base64                          0.13.0  904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd \
    beef                             0.5.0  6736e2428df2ca2848d846c43e88745121a6654696e349ce0054a420815a7409 \
    bitflags                         1.2.1  cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693 \
    blake2b_simd                    0.5.11  afa748e348ad3be8263be728124b24a24f268266f6f5d58af9d75f6a40b5c587 \
    bumpalo                          3.4.0  2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820 \
    cc                              1.0.66  4c0496836a84f8d0495758516b8621a622beb77c0fed418570e50764093ced48 \
    cfg-if                          0.1.10  4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822 \
    cfg-if                           1.0.0  baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd \
    chrono                          0.4.19  670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73 \
    clap                            2.33.3  37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002 \
    const_fn                         0.4.4  cd51eab21ab4fd6a3bf889e2d0958c0a6e3a61ad04260325e919e652a2a62826 \
    constant_time_eq                 0.1.5  245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc \
    crossbeam                        0.8.0  fd01a6eb3daaafa260f6fc94c3a6c36390abc2080e38e3e34ced87393fb77d80 \
    crossbeam-channel                0.4.4  b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87 \
    crossbeam-channel                0.5.0  dca26ee1f8d361640700bde38b2c37d8c22b3ce2d360e1fc1c74ea4b0aa7d775 \
    crossbeam-deque                  0.7.2  c3aa945d63861bfe624b55d153a39684da1e8c0bc8fba932f7ee3a3c16cea3ca \
    crossbeam-deque                  0.8.0  94af6efb46fef72616855b036a624cf27ba656ffc9be1b9a3c931cfc7749a9a9 \
    crossbeam-epoch                  0.8.2  058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace \
    crossbeam-epoch                  0.9.1  a1aaa739f95311c2c7887a76863f500026092fb1dce0161dab577e559ef3569d \
    crossbeam-queue                  0.3.1  0f6cb3c7f5b8e51bc3ebb73a2327ad4abdbd119dc13223f14f961d2f38486756 \
    crossbeam-utils                  0.7.2  c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8 \
    crossbeam-utils                  0.8.1  02d96d1e189ef58269ebe5b97953da3274d83a93af647c2ddd6f9dab28cedb8d \
    darling                         0.10.3  15d658711a12632b5574c8d5b3fc5d2f0d2f87b9fbf9237ee0f759b88bb6bdec \
    darling_core                    0.10.3  16d3514d243331d8acde56bfcf45d0147aabbda853c2f49dce081ea85f9a7220 \
    darling_macro                   0.10.3  44f63c369ef0c17ad17585d31d5f2bf10dece2710bf0766e01db57a6f9849a2e \
    defer-drop                       1.0.1  18ae055245e14ed411f56dddf2a78caae87c25d9d6a18fb61f398a596cad77b4 \
    derive_builder                   0.9.0  a2658621297f2cf68762a6f7dc0bb7e1ff2cfd6583daef8ee0fed6f7ec468ec0 \
    derive_builder_core              0.9.0  2791ea3e372c8495c0bc2033991d76b512cd799d07491fbd6890124db9458bef \
    dirs                             2.0.2  13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3 \
    dirs-sys                         0.3.5  8e93d7f5705de3e49895a2b5e0b8855a1c27f080192ae9c32a6432d50741a57a \
    discard                          1.0.4  212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0 \
    either                           1.6.1  e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457 \
    env_logger                       0.8.2  f26ecb66b4bdca6c1409b40fb255eefc2bd4f6d135dab3c3124f80ffa2a9661e \
    fnv                              1.0.7  3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1 \
    fuzzy-matcher                    0.3.7  54614a3312934d066701a80f20f15fa3b56d67ac7722b39eea5b4c9dd1d66c94 \
    getrandom                       0.1.15  fc587bc0ec293155d5bfa6b9891ec18a1e330c234f896ea47fbada4cadbe47e6 \
    hermit-abi                      0.1.17  5aca5565f760fb5b220e499d72710ed156fdb74e631659e99377d9ebfbd13ae8 \
    humantime                        2.0.1  3c1ad908cc71012b7bea4d0c53ba96a8cba9962f048fa68d143376143d863b7a \
    ident_case                       1.0.1  b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39 \
    itoa                             0.4.6  dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6 \
    lazy_static                      1.4.0  e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646 \
    libc                            0.2.81  1482821306169ec4d07f6aca392a4681f66c75c9918aa49641a2595db64053cb \
    log                             0.4.11  4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b \
    maybe-uninit                     2.0.0  60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00 \
    memchr                           2.3.4  0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525 \
    memoffset                        0.5.6  043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa \
    memoffset                        0.6.1  157b4208e3059a8f9e78d559edc658e13df41410cb3ae03979c83130067fdd87 \
    nix                             0.14.1  6c722bee1037d430d0f8e687bbdbf222f27cc6e4e68d5caf630857bb2b6dbdce \
    nix                             0.19.1  b2ccba0cfe4fdf15982d1674c69b1fd80bad427d293849982668dfe454bd61f2 \
    num-integer                     0.1.44  d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db \
    num-traits                      0.2.14  9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290 \
    num_cpus                        1.13.0  05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3 \
    once_cell                        1.5.2  13bd41f508810a131401606d54ac32a467c97172d74ba7662562ebba5ad07fa0 \
    proc-macro-hack                 0.5.19  dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5 \
    proc-macro2                     1.0.24  1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71 \
    quote                            1.0.7  aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37 \
    rayon                            1.4.1  dcf6960dc9a5b4ee8d3e4c5787b4a112a8818e0290a42ff664ad60692fdf2032 \
    rayon-core                       1.9.0  9ab346ac5921dc62ffa9f89b7a773907511cdfa5490c572ae9be1be33e8afa4a \
    redox_syscall                   0.1.57  41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce \
    redox_users                      0.3.5  de0737333e7a9502c789a36d7c7fa6092a49895d4faa31ca5df163857ded2e9d \
    regex                            1.4.2  38cf2c13ed4745de91a5eb834e11c00bcc3709e773173b2ce4c56c9fbde04b9c \
    regex-syntax                    0.6.21  3b181ba2dcf07aaccad5448e8ead58db5b742cf85dfe035e2227f137a539a189 \
    rust-argon2                      0.8.3  4b18820d944b33caa75a71378964ac46f58517c92b6ae5f762636247c09e78fb \
    rustc_version                    0.2.3  138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a \
    ryu                              1.0.5  71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e \
    scopeguard                       1.1.0  d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd \
    semver                           0.9.0  1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403 \
    semver-parser                    0.7.0  388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3 \
    serde                          1.0.118  06c64263859d87aa2eb554587e2d23183398d617427327cf2b3d0ed8c69e4800 \
    serde_derive                   1.0.118  c84d3526699cd55261af4b941e4e725444df67aa4f9e6a3564f18030d12672df \
    serde_json                      1.0.60  1500e84d27fe482ed1dc791a56eddc2f230046a040fa908c08bda1d9fb615779 \
    sha1                             0.6.0  2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d \
    shlex                            0.1.1  7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2 \
    standback                       0.2.13  cf906c8b8fc3f6ecd1046e01da1d8ddec83e48c8b08b84dcc02b585a6bedf5a8 \
    stdweb                          0.4.20  d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5 \
    stdweb-derive                    0.5.3  c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef \
    stdweb-internal-macros           0.2.9  58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11 \
    stdweb-internal-runtime          0.1.5  213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0 \
    strsim                           0.8.0  8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a \
    strsim                          0.10.0  73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623 \
    syn                             1.0.54  9a2af957a63d6bd42255c359c93d9bfdb97076bd3b820897ce55ffbfbf107f44 \
    term                             0.6.1  c0863a3345e70f61d613eab32ee046ccd1bcc5f9105fe402c61fcd0c13eeb8b5 \
    termcolor                        1.1.2  2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4 \
    textwrap                        0.11.0  d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060 \
    thread_local                     1.0.1  d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14 \
    time                            0.1.44  6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255 \
    time                            0.2.23  bcdaeea317915d59b2b4cd3b5efcd156c309108664277793f5351700c02ce98b \
    time-macros                      0.1.1  957e9c6e26f12cb6d0dd7fc776bb67a706312e7299aed74c8dd5b17ebb27e2f1 \
    time-macros-impl                 0.1.1  e5c3be1edfad6027c69f5491cf4cb310d1a71ecd6af742788c6ff8bced86b8fa \
    timer                            0.2.0  31d42176308937165701f50638db1c31586f183f1aab416268216577aec7306b \
    tuikit                           0.4.5  8c628cfc5752254a33ebccf73eb79ef6508fab77de5d5ef76246b5e45010a51f \
    unicode-width                    0.1.8  9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3 \
    unicode-xid                      0.2.1  f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564 \
    utf8parse                        0.2.0  936e4b492acfd135421d8dca4b1aa80a7bfc26e702ef3af710e0752684df5372 \
    vec_map                          0.8.2  f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191 \
    version_check                    0.9.2  b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed \
    void                             1.0.2  6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d \
    vte                              0.9.0  6e7745610024d50ab1ebfa41f8f8ee361c567f7ab51032f93cc1cc4cbf0c547a \
    vte_generate_state_changes       0.1.1  d257817081c7dffcdbab24b9e62d2def62e2ff7d00b1c20062551e6cccc145ff \
    wasi      0.9.0+wasi-snapshot-preview1  cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519 \
    wasi     0.10.0+wasi-snapshot-preview1  1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f \
    wasm-bindgen                    0.2.69  3cd364751395ca0f68cafb17666eee36b63077fb5ecd972bbcd74c90c4bf736e \
    wasm-bindgen-backend            0.2.69  1114f89ab1f4106e5b55e688b828c0ab0ea593a1ea7c094b141b14cbaaec2d62 \
    wasm-bindgen-macro              0.2.69  7a6ac8995ead1f084a8dea1e65f194d0973800c7f571f6edd70adf06ecf77084 \
    wasm-bindgen-macro-support      0.2.69  b5a48c72f299d80557c7c62e37e7225369ecc0c963964059509fbafe917c7549 \
    wasm-bindgen-shared             0.2.69  7e7811dd7f9398f14cc76efd356f98f03aa30419dea46aa810d71e819fc97158 \
    winapi                           0.3.9  5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419 \
    winapi-i686-pc-windows-gnu       0.4.0  ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6 \
    winapi-util                      0.1.5  70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178 \
    winapi-x86_64-pc-windows-gnu     0.4.0  712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
