Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env perl
- use strict;
- use warnings;
- use feature qw(:5.26);
- use constant {
- MAINTAINER => "Kiyoshi Aman <kiyoshi.aman+adelie\@gmail.com>",
- };
- my %dicts = (
- cy => ["Welsh", "aspell-cy-0.50-3.tar.bz2"],
- da => ["Danish", "aspell5-da-1.4.42-1.tar.bz2"],
- de => ["German", "aspell6-de-20030222-1.tar.bz2"],
- 'de-alt' => ["German (Old Spelling)", "aspell6-de-alt-2.1-1.tar.bz2"],
- el => ["Greek", "aspell6-el-0.08-0.tar.bz2"],
- en => ["English", "aspell6-en-2018.04.16-0.tar.bz2"],
- eo => ["Esperanto", "aspell6-eo-2.1.20000225a-2.tar.bz2"],
- es => ["Spanish", "aspell6-es-1.11-2.tar.bz2"],
- et => ["Estonian", "aspell6-et-0.1.21-1.tar.bz2"],
- fa => ["Persian", "aspell6-fa-0.11-0.tar.bz2"],
- fi => ["Finnish", "aspell6-fi-0.7-0.tar.bz2"],
- fo => ["Faroese", "aspell5-fo-0.2.16-1.tar.bz2"],
- fr => ["French", "aspell-fr-0.50-3.tar.bz2"],
- fy => ["Frisian", "aspell6-fy-0.12-0.tar.bz2"],
- ga => ["Irish", "aspell5-ga-4.5-0.tar.bz2"],
- gd => ["Scottish Gaelic", "aspell5-gd-0.1.1-1.tar.bz2"],
- gl => ["Galician", "aspell6-gl-0.5a-2.tar.bz2"],
- grc => ["Ancient Greek", "aspell6-grc-0.02-0.tar.bz2"],
- gu => ["Gujarati", "aspell6-gu-0.03-0.tar.bz2"],
- gv => ["Manx Gaelic", "aspell-gv-0.50-0.tar.bz2"],
- he => ["Hebrew", "aspell6-he-1.0-0.tar.bz2"],
- hi => ["Hindi", "aspell6-hi-0.02-0.tar.bz2"],
- hil => ["Hiligaynon", "aspell5-hil-0.11-0.tar.bz2"],
- hr => ["Croatian", "aspell-hr-0.51-0.tar.bz2"],
- hsb => ["Upper Sorbian", "aspell6-hsb-0.02-0.tar.bz2"],
- hu => ["Hungarian", "aspell6-hu-0.99.4.2-0.tar.bz2"],
- hus => ["Huastec Tenek", "aspell6-hus-0.03-1.tar.bz2"],
- hy => ["Armenian", "aspell6-hy-0.10.0-0.tar.bz2"],
- ia => ["Interlingua", "aspell-ia-0.50-1.tar.bz2"],
- id => ["Indonesian", "aspell5-id-1.2-0.tar.bz2"],
- is => ["Icelandic", "aspell-is-0.51.1-0.tar.bz2"],
- it => ["Italian", "aspell6-it-2.2_20050523-0.tar.bz2"],
- kn => ["Kannada", "aspell6-kn-0.01-1.tar.bz2"],
- ku => ["Kurdi", "aspell5-ku-0.20-1.tar.bz2"],
- ky => ["Kirghiz", "aspell6-ky-0.01-0.tar.bz2"],
- la => ["Latin", "aspell6-la-20020503-0.tar.bz2"],
- lt => ["Lithuanian", "aspell6-lt-1.2.1-0.tar.bz2"],
- lv => ["Latvian", "aspell6-lv-0.5.5-1.tar.bz2"],
- mg => ["Malagasy", "aspell5-mg-0.03-0.tar.bz2"],
- mi => ["Maori", "aspell-mi-0.50-0.tar.bz2"],
- mk => ["Macedonian", "aspell-mk-0.50-0.tar.bz2"],
- ml => ["Malayalam", "aspell6-ml-0.03-1.tar.bz2"],
- mn => ["Mongolian", "aspell6-mn-0.06-2.tar.bz2"],
- mr => ["Marathi", "aspell6-mr-0.10-0.tar.bz2"],
- ms => ["Malay", "aspell-ms-0.50-0.tar.bz2"],
- mt => ["Maltese", "aspell-mt-0.50-0.tar.bz2"],
- nb => ["Norwegian", "aspell-nb-0.50.1-0.tar.bz2"],
- nds => ["Low", "aspell6-nds-0.01-0.tar.bz2"],
- nl => ["Dutch", "aspell-nl-0.50-2.tar.bz2"],
- nn => ["Norwegian", "aspell-nn-0.50.1-1.tar.bz2"],
- ny => ["Chichewa", "aspell5-ny-0.01-0.tar.bz2"],
- or => ["Oriya", "aspell6-or-0.03-1.tar.bz2"],
- pa => ["Punjabi", "aspell6-pa-0.01-1.tar.bz2"],
- pl => ["Polish", "aspell6-pl-6.0_20061121-0.tar.bz2"],
- pt_BR => ["Brazilian Portuguese", "aspell6-pt_BR-20090702-0.tar.bz2"],
- pt_PT => ["Portuguese", "aspell6-pt_PT-20070510-0.tar.bz2"],
- qu => ["Quechua", "aspell6-qu-0.02-0.tar.bz2"],
- ro => ["Romanian", "aspell5-ro-3.3-2.tar.bz2"],
- ru => ["Russian", "aspell6-ru-0.99f7-1.tar.bz2"],
- rw => ["Kinyarwanda", "aspell-rw-0.50-0.tar.bz2"],
- sc => ["Sardinian", "aspell5-sc-1.0.tar.bz2"],
- sk => ["Slovak", "aspell6-sk-2.01-2.tar.bz2"],
- sl => ["Slovenian", "aspell-sl-0.50-0.tar.bz2"],
- sr => ["Serbian", "aspell6-sr-0.02.tar.bz2"],
- sv => ["Swedish", "aspell-sv-0.51-0.tar.bz2"],
- sw => ["Swahili", "aspell-sw-0.50-0.tar.bz2"],
- ta => ["Tamil", "aspell6-ta-20040424-1.tar.bz2"],
- te => ["Telugu", "aspell6-te-0.01-2.tar.bz2"],
- tet => ["Tetum", "aspell5-tet-0.1.1.tar.bz2"],
- tk => ["Turkmen", "aspell5-tk-0.01-0.tar.bz2"],
- tl => ["Tagalog", "aspell5-tl-0.02-1.tar.bz2"],
- tn => ["Setswana", "aspell5-tn-1.0.1-0.tar.bz2"],
- tr => ["Turkish", "aspell-tr-0.50-0.tar.bz2"],
- uk => ["Ukrainian", "aspell6-uk-1.4.0-0.tar.bz2"],
- uz => ["Uzbek", "aspell6-uz-0.6-0.tar.bz2"],
- vi => ["Vietnamese", "aspell6-vi-0.01.1-1.tar.bz2"],
- wa => ["Walloon", "aspell-wa-0.50-0.tar.bz2"],
- yi => ["Yiddish", "aspell6-yi-0.01.1-1.tar.bz2"],
- zu => ["Zulu", "aspell-zu-0.50-0.tar.bz2"],
- );
- my $apkbuild = <<'EOF';
- # Contributor: %name%
- # Maintainer: %name%
- pkgname=aspell-dict-%cc%
- pkgver=%pkgver%
- pkgdesc="%lang% dictionaries for aspell"
- url="http://aspell.net"
- arch="noarch"
- options="!check" # no tests
- license=""
- depends="aspell"
- makedepends="debianutils-which"
- source="ftp://ftp.gnu.org/gnu/aspell/dict/%cc%/%filename%"
- builddir="$srcdir/%dirname%"
- build() {
- cd "$builddir"
- ./configure --vars DESTDIR="$pkgdir"
- }
- package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install
- }
- EOF
- for my $cc (keys %dicts) {
- my %vars = (
- cc => $cc,
- lang => $dicts{$cc}[0],
- name => MAINTAINER,
- );
- my $fname = $dicts{$cc}[1];
- $fname =~ /^(aspell[56]?-$cc)-(.*?)\.tar\.bz2$/;
- my ($dir, $temp) = ($1, $2);
- ($vars{pkgver}, $vars{pkgver2}) = split /-/, $temp, 2;
- if (defined($vars{pkgver2})) {
- $vars{pkgver} .= "\n_pkgver=\$pkgver-$vars{pkgver2}";
- $vars{dirname} .= "-$vars{pkgver2}";
- $fname =~ s/-\d+(\.\d+)+(_\d+)?[a-z]?-\d/-\$_pkgver/;
- $vars{dirname} = "$dir-\$_pkgver";
- } else {
- $fname =~ s/-\d+(\.\d+)+(_\d+)?[a-z]?/-\$pkgver/;
- $vars{dirname} = "$dir-\$pkgver";
- }
- $vars{filename} = $fname;
- my $content = $apkbuild;
- $content =~ s/%([a-z0-9]+)%/$vars{$1}/g;
- mkdir "aspell-dict-$vars{cc}" or die "Can't create directory for $vars{cc}: $!\n";
- open my $fh, '>', "aspell-dict-$vars{cc}/APKBUILD" or die "Can't open APKBUILD for $vars{cc}: $!\n";
- $fh->print($content);
- close $fh;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement