[gaim-migrate @ 3055]
[pidgin-git.git] / licq2gaim.pl
blob246eb891c68914331bfc7b15dc86d08a19d39b10
1 #!/usr/bin/perl -w
2 # licq2gaim.pl
4 # Arturo Cisneros, Jr <acjr@hal-pc.org>
5 # GPL'd
7 use strict;
9 my $DIR = "$ENV{HOME}/.licq";
10 my $GAIM = "$ENV{HOME}/.gaim";
11 my (@UINS, %USERS) = ();
12 my $OWNER = "";
15 get_uins();
17 foreach my $uin (@UINS) {
18 $USERS{$uin} = get_alias($uin);
21 get_owner();
22 write_list();
25 sub get_uins {
27 opendir(DIR, "$DIR/users") or die "Couldn't open dir $DIR/users/: $!";
28 @UINS = grep !/^\./, readdir DIR;
29 closedir(DIR);
32 sub get_owner {
34 my @foo = ();
36 open(FILE, "<$DIR/owner.uin") or die "Couldn't open file $DIR/owner.uin $!";
37 while(<FILE>) {
38 next unless /^Uin/;
39 @foo = split;
40 last;
42 close(FILE);
44 $OWNER = $foo[2];
47 sub get_alias {
49 my @foo = ();
51 open(FILE, "<$DIR/users/$_[0]") or die "Couldn't open $DIR/users/$_[0]: $!";
52 while(<FILE>) {
53 next unless /^Alias/;
54 @foo = split / /, $_, 3;
55 last;
57 close(FILE);
59 return $foo[2];
62 sub write_list {
64 # Backup Original
65 if( -e "$GAIM/$OWNER.3.blist") {
66 rename("$GAIM/$OWNER.3.blist","$GAIM/$OWNER.3.bak");
69 # Write new file
70 open(FILE, ">$GAIM/$OWNER.3.blist") or die "Couldn't open file for writing: $!";
71 print FILE "m 1\n";
72 print FILE "g ICQBuddies\n";
73 while(my($key, $value) = each %USERS) {
74 $key =~ s/\.uin$//;
75 print FILE "b $key:$value";
77 close(FILE);