about archives contact posts tags
Since you're already here and don't want to pass by, welcome to my webpage!
One may wonder what Pimentola is. Well, according to Kalevala, it is a very cold location somewhere in the far North. The word means something like a "region of darkness". That's why it is dark over there. You can check an article on Pohjola to learn a bit more.
Hope you're not afraid of cold and darkness.
Here is my monthly log covering what I have been doing for Debian in March 2018.
Debian website
Added new files
Translated new pages into Russian
dsa-4127.wml, dsa-4128.wml, dsa-4129.wml, dsa-4130.wml, dsa-4131.wml, dsa-4132.wml, dsa-4133.wml, dsa-4134.wml, dsa-4135.wml, dsa-4136.wml, dsa-4137.wml, dsa-4138.wml, dsa-4139.wml, dsa-4140.wml, dsa-4141.wml, dsa-4142.wml, dsa-4143.wml, dsa-4144.wml, dsa-4145.wml, dsa-4146.wml, dsa-4147.wml, dsa-4148.wml, dsa-4149.wml, dsa-4150.wml, dsa-4151.wml, dsa-4152.wml, dsa-4153.wml, dsa-4154.wml, dsa-4155.wml, dsa-4156.wml, dsa-4157.wml, dsa-4158.wml
Translated historical pages into Russian
- dsa-2313.wml, dsa-1956.wml, dsa-2394.wml, dsa-1908.wml, dsa-1995.wml, dsa-1613.wml, dsa-2451.wml, dsa-2089.wml, dsa-2266.wml, dsa-1318.wml, dsa-1673.wml, dsa-2296.wml, dsa-1273.wml, dsa-1227.wml, dsa-2388.wml, dsa-1536.wml, dsa-1264.wml, dsa-1532.wml, dsa-1534.wml, dsa-1535.wml, dsa-1574.wml, dsa-1992.wml, dsa-148.wml, dsa-2507.wml, dsa-2567.wml, dsa-1207.wml, dsa-2028.wml, dsa-1809.wml, dsa-1997.wml, dsa-2305.wml,
Synchronized translated pages with the original ones
dsa-4135.wml (also French and Swedish translations)
Website-related scripts
- Adapted copyadvisory.pl script
Localization
Participated in the updating of apt-listchanges translation: Debian bug #892059
Updated Russian translation of aptitude: Debian bug #893027
Updated Russian translation of aptitude's user manual: Debian bug #893028
Debian packages
Uploaded packages
- dumb-jump-el: 0.5.2-1
- pyvenv-el: 1.12-1
- git-timemachine: 4.5-1
- ed: 1.14.2-1, 1.14.2-2
- no-littering-el: 0.5.13-1
- monokai-emacs: 3.5.2-1
- hl-todo-el: 1.8.1-1
- emacs-git-modes: 1.2.7-1
Uploaded packages to the NEW queue
- char-menu-el: 0.1.1-1 [NEW]
- pip-requirements-el: 0.5-1 [NEW]
- pcre2el: 1.8-1 [NEW]
- python-sexpdata: 0.0.3-1 [NEW]
Bugs (except l10n bugs)
Debian bug #891678: WNPP, properly retitled
Debian bug #894219: WNPP, properly retitled
Debian bug #894182: WNPP, properly retitled
Debian bug #893139: reported, patch
Debian bug #668352: closed
Debian bug #694057: forwarded upstream
Debian bug #862604: patch
Debian bug #829589, Debian bug #893338, Debian bug #893339 : triage, report
Debian bug #893365: reported
Debian bug #887155: triage
Debian bug #893421: forwarded upstream
Debian bug #893390: fix RC bug
Debian Mailing Lists, Listarchive Review
Reviewed 72 spam reports.
As I wrote earlier Debian migrates from Alioth to Salsa. In the previous post I've explained how to batch import Alioth repositories for which one has local clones with the help of a small and ugly Perl script. But this is just a part of what should be done. This time I modified the scipt to change Vcs-{Browser,Git} URLs in the debian/control files from Alioth to Salsa, commit changes, change git remote, and push. Don't expect the code to be beautiful or efficient, it just works for me.
So, to use the script with the other team's repositories (other than Debian Emacs Addons Packaging Team) one needs to slightly change the $salsa, $alioth, $salsa_origin variables. Also, it is possible to black list directories with the help of grep in @dirs declaration. If you want to silence git, then append >/dev/null 2>/dev/null to the corresponding git commands.
Yes, I understand that I should add this URLs updating functionality to the original script in the first place, but at the time I wrote it I was not ready to spend more time on it. And since the migration is rather a one-shot thing, I don't want to polish it now. Therefore, be careful while using it for your stuff. There are no guarantees that it will work for you or will not break anything.
#!/usr/bin/perl
use warnings;
use strict;
use File::Slurp;
my $root = $ARGV[0];
my $salsa = "https://salsa.debian.org/emacsen-team/";
my $alioth = qr/https:\/\/anonscm\.debian\.org\/c?git\/pkg-emacsen\/pkg\//;
my $salsa_origin = 'git@salsa.debian.org:emacsen-team/';
my $commit_message = "Change Vcs-{Browser,Git} URL to salsa.debian.org";
opendir my $dh, $root or die "$0: opendir: $!";
my @dirs = grep { -d "$root/$_" && ! /^\.{1,2}$|^dh-.*(elpa)+/ } readdir($dh);
closedir $dh;
foreach my $dir (@dirs) {
chdir $root . $dir;
next unless (-e $root . $dir . "/debian/control");
system "git pull origin master";
my @lines = read_file( $root . $dir . "/debian/control" );
my $git_new_origin;
print "Processing $dir...\n";
for (my $l = 0; $l <= $#lines; $l++) {
unless ($lines[$l] =~ /$salsa/g) {
if ($lines[$l] =~ m/Vcs-Browser: $alioth/) {
$lines[$l] =~ s/(Vcs-Browser: ).*\/(.+)\.git\/$/$1$salsa$2/g;
} elsif ($lines[$l] =~ m/Vcs-Git: $alioth/) {
$lines[$l] =~ s/(Vcs-Git: ).*\/(.+\.git)$/$1$salsa$2/g;
$git_new_origin = "git remote add origin $salsa_origin$2";
}
}
}
write_file( $root . $dir . "/debian/control", @lines );
system "git remote rm origin";
if ($git_new_origin) {
system $git_new_origin;
system "git commit -a -m $commit_message";
system "git push"
} else {
print "No changes, skipping...\n"
}
}
The script gets path to the root directory, containing the local clones, as an argument, so it should be ran as something like ./salsa-convert.pl ~/freedom/packaging/elpa/.
Here is my monthly log covering what I have been doing for Debian in February 2018.
Debian website
Added new files
Translated new pages into Russian
dsa-4103.wml, dsa-4104.wml, dsa-4105.wml, dsa-4106.wml, dsa-4107.wml, dsa-4108.wml, dsa-4109.wml, dsa-4110.wml, dsa-4111.wml, dsa-4112.wml, dsa-4113.wml, dsa-4114.wml, dsa-4115.wml, dsa-4116.wml, dsa-4117.wml, dsa-4118.wml, dsa-4119.wml, dsa-4120.wml, dsa-4121.wml, dsa-4122.wml, dsa-4123.wml, dsa-4124.wml, dsa-4125.wml, dsa-4126.wml
Translated historical pages into Russian
- dsa-2225.wml, dsa-2307.wml, dsa-2317.wml, dsa-2312.wml, dsa-1270.wml, dsa-2295.wml, dsa-2457.wml, dsa-946.wml, dsa-1756.wml, dsa-1588.wml, dsa-1502.wml, dsa-2323.wml, dsa-2459.wml, dsa-1901.wml, dsa-1488.wml, dsa-1900.wml, dsa-1285.wml, dsa-674.wml, dsa-1691.wml, dsa-2301.wml, dsa-1863.wml, dsa-899.wml, dsa-2332.wml, dsa-1479.wml, dsa-1954.wml, dsa-1271.wml, dsa-1766.wml
Synchronized translated pages with the original ones
Debian packages
Uploaded packages
pyvenv-el: 1.11-1
xmonad-extras: 0.13.2-2
xmonad-wallpaper: 0.0.1.4-1
git-timemachine: 4.4-1
ido-ubiquitous: 4.7-1
Debian QA
Properly retitled WNPP bug reports
Debian Mailing Lists, Listarchive Review
Reviewed 235 spam reports.
Other stuff
Migrated my Emacs addons packages (I think 89 packages total) from Alioth to Salsa.
Debian migrates from Alioth to Salsa. Salsa is a GitLab instance, which is used to host git repositories for Debian.
I maintain about 90 Debian packages as a member of Debian Emacs Addons Packaging Team. So, migrating these packages by hand can easily become a hurdle. Fortunately, there's already some code written to ease migration. One can find Mehdi Dogguy's scripts, especially his import.sh script. I also found Enrico Zini's fork of the mentioned repository. Enrico Zini's fork contains some changes for better error handling. Since I just want to migrate a bunch of my repositories and don't want to mess things up, I choose to stick with the latter version of the import.sh script.
The first thing one needs to do is to generate access token with api scope. Then one needs to put that token to salsarc file in a directory containing import.sh script. Now it is possible to import Alioth repository to Salsa using something like as follows:
./import.sh https://anonscm.debian.org/cgit/pkg-emacsen/pkg/ace-link.git/ emacsen-team
Now we need to grab somewhere URLs of Alioth repositories to import to Salsa. Typically there is a Vcs-Browser field in debian/control file, which contains URL in question. So, I decided to write some small and ugly Perl script to batch process local clones of Alioth repositories. Note that I placed all clones of pkg-emacsen's Alioth repositories to the same directory. So, the code batch processing can be something like as following:
#!/usr/bin/perl
use warnings;
use strict;
my $root = $ARGV[0];
opendir my $dh, $root or die "$0: opendir: $!";
my @dirs = grep { -d "$root/$_" && ! /^\.{1,2}$|^dh-.*(elpa)+/ } readdir($dh);
closedir $dh;
DIR: foreach (@dirs) {
print "Processing $_...\n";
open my $fh, ( $root . $_ . "/debian/control" ) or die "$0: open: $!";
while (<$fh>) {
chomp;
if (m/(Vcs-Browser: )(.*)/) {
$_ =~ s/(Vcs-Browser: )(.*)/$2/g;
system "./import.sh $_ emacsen-team";
next DIR;
}
}
close $fh;
}
To batch process local clones one needs to run the script with the path to the directory with the clones in question as an argument, that is
./batch.pl /home/dogsleg/freedom/packaging/elpa/
You can easily adopt the script to batch import repositories of any Debian team. Moreover, by tweaking grep in @dirs declaration one can blacklist subdirectories that should not be processed.
By the way, importing takes time. It took about 30 minutes to process 90 packages.
This is the first post to my brave new blog. I'll try to write some stuff there from time to time. Hope it will be useful for both the intended and arbitrary visitors. Also, I'd like to take advantage of the opportunity and give you some hints about myself. So...
Currently I live in Yekaterinburg, Russia
I have an equivalent of Ph.D in philosophy and work as a docent of philosophy department
My professional interests are in such fields as the foundations of mathematics, logic, theory of knowledge, and metaphysics
I'm passionate about free and open source software, I'm a Debian Developer
Although I'm OK with monotonous and boring work, I also like to program, so machines are involved in doing some boring stuff
I know some bits of Agda, Bash, C, Coq, Emacs Lisp, Haskell, Perl, Prolog, Python; and yes, I know many other geeky words too
Besides all of the stuff mentioned above I'm interested in genealogy and using genetics to reveal genealogical mysteries of the past
So, my Y-haplogroup is N1a2b (N-P43, VL97+), and my Mt-haplogroup is H1b2
I don't believe in psychological classifications stuff, but to make some fun of it I did several tests, and was classified as a logical intuitive introvert
And still there's some grains of truth in the above classification, e. g., it is typically hard for me to talk and deal face to face with strangers
In many activities I consider myself to be a kind of Wikipedia:WikiGnome
Also, I'm inspired by the beauty of nature
This page is powerly powered by powerful ikiwiki.