diff --git a/pkgs/desktops/kde-4.5/l10n/default.nix b/pkgs/desktops/kde-4.5/l10n/default.nix index b29df0f5937..ca4ade5d40f 100644 --- a/pkgs/desktops/kde-4.5/l10n/default.nix +++ b/pkgs/desktops/kde-4.5/l10n/default.nix @@ -3,18 +3,22 @@ let overrides = { }; - defaultVersion = "4.5.1"; + defaultRelease = "4.5.2"; + releases = [ "4.5.1" "4.5.2" ]; - getOverride = name: stdenv.lib.attrByPath [name] {} overrides; + sanitizeString = replaceChars [ "@" "." ] [ "_" "_" ]; + getOverride = name: attrByPath [name] {} overrides; - kdeL10nDerivation = {lang, sha256, version} : + inherit (stdenv.lib) replaceChars attrByPath singleton; + + kdeL10nDerivation = {lang, sha256, release} : let - name = "kde-l10n-${lang}-${version}"; + name = "kde-l10n-${lang}-${release}"; in stdenv.mkDerivation ({ inherit name; src = fetchurl { - url = "mirror://kde/stable/${version}/src/kde-l10n/${name}.tar.bz2"; + url = "mirror://kde/stable/${release}/src/kde-l10n/${name}.tar.bz2"; inherit sha256; }; @@ -28,24 +32,25 @@ let } // (getOverride lang) // (getOverride name) ); + + kdeL10nRelease = release: + let + releaseStr = sanitizeString release; + in + builtins.listToAttrs ( + map ({lang, sha256}: + { + name = "${sanitizeString lang}"; + value = kdeL10nDerivation { inherit lang release sha256;}; + } + ) (import (./manifest + "-${release}.nix")) + ); + in { inherit kdeL10nDerivation; recurseForDerivations = true; } -// (builtins.listToAttrs ( - map (a@{lang, version, sha256} : - { - name = stdenv.lib.replaceChars ["." "@"] ["_" "_"] "${lang}_${version}"; - value = kdeL10nDerivation a; - } - ) (import ./manifest.nix) -)) -// (builtins.listToAttrs ( - map (a@{lang, version, sha256} : - { - name = stdenv.lib.replaceChars ["." "@"] ["_" "_"] "${lang}"; - value = kdeL10nDerivation a; - } - ) (stdenv.lib.filter (x : x.version == defaultVersion) (import ./manifest.nix)) -)) +// builtins.listToAttrs (map (r : { name = sanitizeString r; value = +kdeL10nRelease r; }) releases) +// (kdeL10nRelease defaultRelease) diff --git a/pkgs/desktops/kde-4.5/l10n/l10n-manifest.sh b/pkgs/desktops/kde-4.5/l10n/l10n-manifest.sh new file mode 100755 index 00000000000..aa41ccd4278 --- /dev/null +++ b/pkgs/desktops/kde-4.5/l10n/l10n-manifest.sh @@ -0,0 +1,34 @@ +#!/bin/sh + +# Usage: download kde-l10n to $dir, then run +# $0 $dir + +dir=$1 + +if [[ ! -d "${dir}" ]]; then + echo "${dir} is not a directory (or doesn't exist)!" >&2 + exit 1 +fi + +release=$(ls "${dir}"/kde-l10n-en_GB-*.tar.bz2 | \ + sed -e 's/.*en_GB-//' -e 's/\.tar\.bz2//') + +echo "Detected release ${release}" >&2 + +exec > "manifest-${release}.nix" +echo "[" +for i in `cd "${dir}"; ls kde-l10n-*-${release}.tar.bz2`; do + lang=${i%-${release}.tar.bz2} + lang=${lang#kde-l10n-} + echo -n "${lang}.. " >&2 + hash=$(nix-hash --type sha256 --flat --base32 "${dir}/${i}") + echo "{" + echo " lang = \"${lang}\";" + if [[ "${lang}" =~ "@" ]]; then + echo " langStripped = \"${lang/@/_}\";" + fi + echo " sha256 = \"${hash}\";" + echo "}" + echo $hash >&2 +done +echo "]" diff --git a/pkgs/desktops/kde-4.5/l10n/manifest.nix b/pkgs/desktops/kde-4.5/l10n/manifest-4.5.1.nix similarity index 80% rename from pkgs/desktops/kde-4.5/l10n/manifest.nix rename to pkgs/desktops/kde-4.5/l10n/manifest-4.5.1.nix index 8f8aa3b9817..3f7e0ffc8ab 100644 --- a/pkgs/desktops/kde-4.5/l10n/manifest.nix +++ b/pkgs/desktops/kde-4.5/l10n/manifest-4.5.1.nix @@ -1,272 +1,218 @@ [ { lang = "ar"; - version = "4.5.1"; sha256 = "0xgmrwlza3p2fvj66y4vc4r81r5y2n2igjaj2xmgvb2pvh4zx0ws"; } { lang = "bg"; - version = "4.5.1"; sha256 = "1npa9y8i7j68c8sa9cd96gy4n65bkl474agibax8rdk2mniyqrn9"; } { lang = "ca"; - version = "4.5.1"; sha256 = "0097sk50cf1cq6wnah3kiab8vkh68snzahcng2blk63gw908yfvx"; } { lang = "cs"; - version = "4.5.1"; sha256 = "077424cbqn68rf9wb026ip1n0rq5lz1iwp4k7ih15j87ymbrd03f"; } { lang = "da"; - version = "4.5.1"; sha256 = "0p80a2pn9hgih2y5s27z8ir8jkyz68i87sdw439c8z3pjww5dy2h"; } { lang = "de"; - version = "4.5.1"; sha256 = "007r6wf0in22y2jc1nr1msazv6bd48136kc4q0633gn1igdhb03h"; } { lang = "el"; - version = "4.5.1"; sha256 = "1ffgqjxgdfsjx0nwhj5yl2pn2kmc92s01wfxzdvb6kss9r53v95k"; } { lang = "en_GB"; - version = "4.5.1"; sha256 = "1bmg1aygaarnpka9dfvxgnzwqphqaly8rfps63g03ncls7ml8ilb"; } { lang = "eo"; - version = "4.5.1"; sha256 = "0bqrarah2pc6kjcfla117rwc0k1m23ndp4nm4ac2sygmanz1j6bk"; } { lang = "es"; - version = "4.5.1"; sha256 = "0hr3halsjjdzlmx2rfxycacm26pxs1f3m8awahmr1dp5ngid42wn"; } { lang = "et"; - version = "4.5.1"; sha256 = "1pj1wjnjjj052csn0ajql2i3ynpd4fc9l53zj4j3vsd177gypdjw"; } { lang = "eu"; - version = "4.5.1"; sha256 = "0zhrqy8b7wn8vdq75dlafc91mhvqpn3cw7hn90jj99c1aazdhjpd"; } { lang = "fi"; - version = "4.5.1"; sha256 = "0x0dhy1c7wn5wxqx2v7jyv10rc6gi6klmw0q80vp3xpfma9l16yg"; } { lang = "fr"; - version = "4.5.1"; sha256 = "1yvzpvxdzznrj61hdbi9jgpxdb9l0i8g24q1xkswpnp87jrncpaq"; } { lang = "fy"; - version = "4.5.1"; sha256 = "14c740yfw5v043rmqmwnb3ic0s7l2kcjy57qdqhfpmr75m4rjrvl"; } { lang = "ga"; - version = "4.5.1"; sha256 = "0w5cj0bgyy2pna8hqcpx82n3pwzr9vzshzknz86azb8c0pwkcjdw"; } { lang = "gl"; - version = "4.5.1"; sha256 = "00kwqzypkw0bi8nhz75a367h2filwkmc1kiiv66l2s3d4vrkdgjz"; } { lang = "gu"; - version = "4.5.1"; sha256 = "0as072rz4k4h8b0ix8jipn6bfck8van024sz1gd6xj1bhs83wk0m"; } { lang = "he"; - version = "4.5.1"; sha256 = "1f5j1qgkmzjagmyjxa00xmfxk5zgfms77gidg88hycrvgrxm6g59"; } { lang = "hi"; - version = "4.5.1"; sha256 = "0sy6cis0hkddmq4jw43a7rpxjadmzrgbgyhnnhyp9m6n225rh54g"; } { lang = "hr"; - version = "4.5.1"; sha256 = "016h7iqfkarl6p20gqcajknw3bsbqvby824fsdyrrhan82vsqd0k"; } { lang = "hu"; - version = "4.5.1"; sha256 = "1ck6vrrvvwlcxlgmmjq4hk5dh38clqvf3fwc7ndgr4wrxlr4c94m"; } { lang = "ia"; - version = "4.5.1"; sha256 = "13mnd7ndkfdq591da3cwj64wchq86qk265i6r7xir87gxn5m86xr"; } { lang = "id"; - version = "4.5.1"; sha256 = "0a1rw0mx1fdmps5vfx7m8mrmsqvqkpdbpbwys9sxbxy1zcbinasr"; } { lang = "is"; - version = "4.5.1"; sha256 = "0hinhxsq4nm4g97gcdfyx8fzx6d0syg9llww9spwpqp26myad69r"; } { lang = "it"; - version = "4.5.1"; sha256 = "0z4kdlmyliqa6qgdxbimifp535p6nvvydpa504i9klxcywc382y5"; } { lang = "ja"; - version = "4.5.1"; sha256 = "1vsyjgwh69wwadn27ncxmr85d1qn91xvrbfxxl8x9gqa44dzrs7k"; } { lang = "kk"; - version = "4.5.1"; sha256 = "1nzx2djxav6hga6ha473xkqiqgv8ikh3iq3b7i20zqcsjp3lhynq"; } { lang = "km"; - version = "4.5.1"; sha256 = "0rd36apjlgq3qvhbdq0a289hbn1hff1qbnphaisy1p1dsh3bbnw9"; } { lang = "kn"; - version = "4.5.1"; sha256 = "0al7whnmcpiq50b56xhzxpd6zmwv79s5j62m6z537kl3ldq9is5l"; } { lang = "ko"; - version = "4.5.1"; sha256 = "0s5y6h8nx4xp5vd39qpby303zsvi67yrbdzsgvig98gbw61szkd7"; } { lang = "lt"; - version = "4.5.1"; sha256 = "0wmwfn7w6z1lvjgn283rcpxv8j6lh8yzkvgjmhdg2r4ys948gzz0"; } { lang = "lv"; - version = "4.5.1"; sha256 = "1w4k7rr06m0ynl52gdikqw45754pj7z9n65pxyv88gxj5sjkzlw8"; } { lang = "ml"; - version = "4.5.1"; sha256 = "1qgs6xwyx1sc496ybq1m1mm0wyl9fz6317p4m5jvwiicldrcx3hq"; } { lang = "nb"; - version = "4.5.1"; sha256 = "0frnnxang8k491cnmn9lc2kbqkqr5m40c53d75l07j97jndv98y1"; } { lang = "nds"; - version = "4.5.1"; sha256 = "1p3h86qzrrhxrvl4qryizm3j6lnq3lm1vpnnapkk04y7msz0fdpr"; } { lang = "nl"; - version = "4.5.1"; sha256 = "0lphl2j0faalaj3mkkqv5806bg2fd6s1478cprrrkw788hvvlmzl"; } { lang = "nn"; - version = "4.5.1"; sha256 = "06pj24zfsgbkk1jxjjs5by8czv0llfz90iq6rq4lxnc0s195isjg"; } { lang = "pa"; - version = "4.5.1"; sha256 = "1sqqanvxzw63bdlkgvi6jlngvrshqrfl8d0jac103wvy4y4f6l5r"; } { lang = "pl"; - version = "4.5.1"; sha256 = "13n278n3p32bphch54x7qgba268m95kmql3qgxsx8ziy8riir9mm"; } { lang = "pt"; - version = "4.5.1"; sha256 = "12mkprpk9imda0iyi65mg4rs3w2qnyq8iszg0k7yqf7537zpv4x1"; } { lang = "pt_BR"; - version = "4.5.1"; sha256 = "1ipn6kvc3nq84fvpb9xrpwkqjaj2sya3y1cr2ai51909yfjk5r35"; } { lang = "ro"; - version = "4.5.1"; sha256 = "1kfyjlpkjnmv7fryr1w2a9d1dijkmhs3mqpqg0hi7316qy2z10jy"; } { lang = "ru"; - version = "4.5.1"; sha256 = "0m62rszff2k4rffmy3h9hxhs8bf523cfinlyay663zq3bh35i6h9"; } { lang = "sk"; - version = "4.5.1"; sha256 = "07pzslmln8yh0s8ik0bj86rhyy4w21w13pvf9z6ifapqigklw33c"; } { lang = "sl"; - version = "4.5.1"; sha256 = "1vrdzbl5ii6paaick88dkr5fabjpi36gjwwz67kqy6d9nm44jjp1"; } { lang = "sr"; - version = "4.5.1"; sha256 = "186ncq0hr0lrn1l6xhqwjwqrmd9xw9qa0kf9cqvj0x3j6qk4mjqf"; } { lang = "sv"; - version = "4.5.1"; sha256 = "0r62fs75a1kfr2dsfg1zrzh0c2wgbv6jq4c1w05wcbmqvpq16ks6"; } { lang = "th"; - version = "4.5.1"; sha256 = "1apvlcmbwhnjc3dlfjzah1ckwwhjn2rcrvgmv1rwvn9py7yfzhf5"; } { lang = "tr"; - version = "4.5.1"; sha256 = "0zci2fqcnlj9y23sy7v8yb1nc37dfqbpj1xrfs7sfvhj12048sb0"; } { lang = "uk"; - version = "4.5.1"; sha256 = "0p9jdz8w8xiiqhbsj90gkshcpijh2l8hfbvvqy12d1nx5wb1glp3"; } { lang = "wa"; - version = "4.5.1"; sha256 = "06hybn2l2jlibxr6lg91p0p7nnc6lyisx0w64zar52h958mqa9p8"; } { lang = "zh_CN"; - version = "4.5.1"; sha256 = "1f786n41yqfi02gd0n9lf30xn9djgbm26c8kqx8p7fm2b5vw28jh"; } { lang = "zh_TW"; - version = "4.5.1"; sha256 = "065d2ggahphsffk7p8xb9p5xzm12azz84s9jll447sawwks0jgsg"; } ] diff --git a/pkgs/desktops/kde-4.5/l10n/manifest-4.5.2.nix b/pkgs/desktops/kde-4.5/l10n/manifest-4.5.2.nix new file mode 100644 index 00000000000..cb9a4506555 --- /dev/null +++ b/pkgs/desktops/kde-4.5/l10n/manifest-4.5.2.nix @@ -0,0 +1,222 @@ +[ +{ + lang = "ar"; + sha256 = "1wlg38gfv77d4rfzr6ba8mcrbq1lsgvqpd1zgcfgv9m6c5i32rh0"; +} +{ + lang = "bg"; + sha256 = "0dy2zirfs2aan445862srfrxkvmv9l6dk1qzk2mis8lmq7qnvv4x"; +} +{ + lang = "ca"; + sha256 = "0ay15k75d44ggr6s5qxip7cwyddl91zlqgwnp71iw720iq49d4c1"; +} +{ + lang = "ca@valencia"; + sha256 = "0fmcmpm3wi1qfd0lvd10d0crn7jfzf9n184x45fvqw4dkn62phdc"; +} +{ + lang = "cs"; + sha256 = "0r06qh0i3il2n07bbp70gsr5p7y5gb9gd1gzy5m5g33mmnhgf2af"; +} +{ + lang = "da"; + sha256 = "1dz2ixm42ndyqwjs6h3900ycq9j50l0nzahxmjfm76b9r2cbph6g"; +} +{ + lang = "de"; + sha256 = "1729hhfwszairx08x0s5rbidrbxqqvlh1m6rww2j1bqv5krgadns"; +} +{ + lang = "el"; + sha256 = "1is7vy7m0y3x6n5llcg4fz8qd6ddjvfxriyggw9kx1g661z25gny"; +} +{ + lang = "en_GB"; + sha256 = "0nwgj99y13h3fc6ljmnmrxaj3aiwg031p4nrb49ngmh66r1c3n2r"; +} +{ + lang = "eo"; + sha256 = "0w78f6n2nhalgj7i997hrkka9i252mrny8mgnq8bfwsr03lfjs9h"; +} +{ + lang = "es"; + sha256 = "18cqvjw7f9kj0inhhw00b6jxgsikamr0iik7pbblra2shimpr9hh"; +} +{ + lang = "et"; + sha256 = "1zrdywhc34kj09141ybr5g98bf1zqrxzazsdi51ln07pcmbrn7fd"; +} +{ + lang = "eu"; + sha256 = "03ff2narllyjyl7ddqq80i88m10ma1g9l0k970vpakw2bk3qd90c"; +} +{ + lang = "fi"; + sha256 = "0kpzsngspxgfgy2fdghb7syksrs4h3392xngl7g1ndr6m9wfrl33"; +} +{ + lang = "fr"; + sha256 = "042jbsr7agkikyj4f3wz6vbwgalmkq75sxm9mr0hspaxqw0rdww5"; +} +{ + lang = "fy"; + sha256 = "0yvqi4z98aql596pa77blrj34mxhv3q04nbp4mdiss9i6wkqxa56"; +} +{ + lang = "ga"; + sha256 = "14s90f9nlk2knkf8lsxklkval39gb77ca70hcs4n571hl3hdvpd7"; +} +{ + lang = "gl"; + sha256 = "0xh409ydzqzsbwq7727i5yj6irb2y75maa7kkvm9bmhpb5whn0k6"; +} +{ + lang = "gu"; + sha256 = "1agly26l4z5lc0s1b4j5rdpdk9sf0ffw9zp8j4mvaz501aifq777"; +} +{ + lang = "he"; + sha256 = "0z2czis29bqga9jzgrdzqf85f6k14gr1rcyawhc6ddffmb5is8pj"; +} +{ + lang = "hi"; + sha256 = "0f1j6682pfajg7dlf2rqqif5s8w00wpjr688kchqdsld7byax4wf"; +} +{ + lang = "hr"; + sha256 = "126f04zgnha153yzmq5263chwiz2lv910sgrh23a07k6piip20wi"; +} +{ + lang = "hu"; + sha256 = "10cwzpsq42vkyb4x7sc406pjf3ryr5api0cr9vwhnnqprwr82yw3"; +} +{ + lang = "ia"; + sha256 = "0gd6li2iy1l0bg9kvs19hsxlrqzfa92if7j9g90l8qml1xg0d916"; +} +{ + lang = "id"; + sha256 = "1rz8h2yna7hyvv2bynf0q5zz42qs74y6z4y2ca92b0qfc4a1ai1d"; +} +{ + lang = "is"; + sha256 = "1lkr67dlpskj141y7wihxdgnmkag1dalb8s0r1xixf051ax2wd2y"; +} +{ + lang = "it"; + sha256 = "1pz0mlg1p9mrqb79m7dsm6lk8iicyc8jwbrvrhlsji6ahr81pybk"; +} +{ + lang = "ja"; + sha256 = "12333ilhd67y8gkddpx7jzdvs10h66qi8qi4nrqb6ici6spxmb3i"; +} +{ + lang = "kk"; + sha256 = "0q845ix7kadfsphvfdkz7fawh3zqmainsw321mn90n6izf8y893j"; +} +{ + lang = "km"; + sha256 = "0ahmw632kqclplq5d65inglhvn5jzxdjhhpkqx32rq7sxk3qhhrf"; +} +{ + lang = "kn"; + sha256 = "12lp3rbcxbqm27clm71vli2pdwyp8r2bk3a2mmvnv016pjn0vphn"; +} +{ + lang = "ko"; + sha256 = "12fb0wqms571xp9mnyiv61khby71cwsf9sg05w0gjci7avwxv6w0"; +} +{ + lang = "lt"; + sha256 = "1p2rg1w3b6qgzjhsmi8dsj3mh7n8wbkgp9hrwbsl8dj7l6yz9799"; +} +{ + lang = "lv"; + sha256 = "0zm48nl504dwwsrn8b44ldh0dzj7j42v6r54bsfsqajzq7f857yi"; +} +{ + lang = "ml"; + sha256 = "0wxsfykvsg1iz0az1jngdl26sgs73pv0si30n0835xzclcv4dflx"; +} +{ + lang = "nb"; + sha256 = "1040i62nh9ldv2v5ps483r6ccp2jy6w94kijv5h01k2p82iv8f85"; +} +{ + lang = "nds"; + sha256 = "1ljgdlrqwb966xpxg2fpjcqzmplhdbmd566q7k69x5fmmyxw7vn9"; +} +{ + lang = "nl"; + sha256 = "08vwq4xy392bqln31lvbdgzhx50sj44mrnw920j6k2a0f1qmkar7"; +} +{ + lang = "nn"; + sha256 = "1da0xrbx8p72lp6r4nrhh6q5sgfm08vak6dk9g3kssjgnjarg785"; +} +{ + lang = "pa"; + sha256 = "05jkc60csj16gxxh6z5n15g65yqf2nd77sa8f00vjhx58iisvvb2"; +} +{ + lang = "pl"; + sha256 = "0hi7dsrg7dln9nkfc1wichmn334303qxdkihv13fybw43xp3gznv"; +} +{ + lang = "pt"; + sha256 = "17j0angzvv2mxj12jb7vv3dlmljrfhyki5clmj040z64siam0w4k"; +} +{ + lang = "pt_BR"; + sha256 = "1c6i79bslyzz0skfh05152jxn5hqlbas2l9fgzh58amn5bgy6afg"; +} +{ + lang = "ro"; + sha256 = "1yljfz3b7lnnlnwvqf71b22ss99an759hg3xky1nzq11kpp9a5y0"; +} +{ + lang = "ru"; + sha256 = "0p1zp2bgz3afxq4r6cbr1sv56ymq0xvn249vi048knsa2sclq8bk"; +} +{ + lang = "sk"; + sha256 = "1v6lx4jb78k44xgfdxih1mf1817piw1igmvkc39l7r8ci0drvdjx"; +} +{ + lang = "sl"; + sha256 = "1xqyafbzas460p7vxvydw8k8gzsgaxsidy19hzanvdb5ns4j8fs2"; +} +{ + lang = "sr"; + sha256 = "1yznci299164l89dq9k5wfahk5aw3y61i4bf08qn6zi5hmzsfv66"; +} +{ + lang = "sv"; + sha256 = "1k5b9f9i5zn8j5nkafw4cl42rvigssz5fqmy0nv1awj87r9vd3x6"; +} +{ + lang = "th"; + sha256 = "0l25jags9kfhnr0v8k5id2pl85rlxly5a74i94wzvnf0abkmy6hi"; +} +{ + lang = "tr"; + sha256 = "166rw0znk906zikdxg573xykfxmwdnld2ps9c0y758n6mvl107xz"; +} +{ + lang = "uk"; + sha256 = "1hlx3dnf3avcnfs55v0vq9knmf001hs00fd4rqigx8y09i8947jc"; +} +{ + lang = "wa"; + sha256 = "17i73mmc1vwvjwrvz9sq45q0ax43xq3agi2d95s772kpbrf4l8qj"; +} +{ + lang = "zh_CN"; + sha256 = "1xqi0rn36dm7f4j5x9gdk6ml8y3vzzm009qp8algqrzy46j864cz"; +} +{ + lang = "zh_TW"; + sha256 = "1qh3vnpk6ickdqa8n9h1na16s6q7kr61f44b0qymxz2lw79ihhgz"; +} +]