Hello community,
here is the log from the commit of package hexchat for openSUSE:Factory checked in at 2016-09-08 17:39:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/hexchat (Old)
and /work/SRC/openSUSE:Factory/.hexchat.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hexchat"
Changes:
--------
--- /work/SRC/openSUSE:Factory/hexchat/hexchat.changes 2016-07-30 00:28:36.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.hexchat.new/hexchat.changes 2016-09-08 17:39:10.000000000 +0200
@@ -1,0 +2,7 @@
+Mon Sep 5 08:19:38 UTC 2016 - tyang@suse.com
+
+- Modified migrate-configuration-from-xchat.patch
+ Add hexchat-migrate-sh
+ Realizing the migration job with shell script(bnc#989961)
+
+-------------------------------------------------------------------
New:
----
hexchat-migrate-sh
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ hexchat.spec ++++++
--- /var/tmp/diff_new_pack.5etiTg/_old 2016-09-08 17:39:11.000000000 +0200
+++ /var/tmp/diff_new_pack.5etiTg/_new 2016-09-08 17:39:11.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package hexchat
#
-# Copyright (c) 2016 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2013 Andrey Karepin
#
# All modifications and additions to the file contributed by third parties
@@ -25,6 +25,7 @@
Group: Productivity/Networking/IRC
Url: https://hexchat.github.io/
Source0: https://dl.%{name}.net/%{name}/%{name}-%{version}.tar.xz
+Source1: hexchat-migrate-sh
# PATCH-FIX-UPSTREAM: Fix build with python3
Patch0: hexchat-python3.patch
# PATCH-FEATURE-SLE migrate-configuration-from-xchat.patch tyang@suse.com fate#318480 -- replace xchat with hexchat
@@ -114,6 +115,7 @@
make V=1 %{?_smp_mflags}
%install
+install -Dm 0755 %{S:1} %{buildroot}%{_libdir}/hexchat/$(basename %{S:1})
%make_install
# Get rid of libtool archives
@@ -137,6 +139,7 @@
%{_bindir}/%{name}
%dir %{_libdir}/%{name}
%dir %{_libdir}/%{name}/plugins
+%{_libdir}/hexchat/hexchat-migrate-sh
%{_libdir}/%{name}/plugins/checksum.so
%{_libdir}/%{name}/plugins/doat.so
%{_libdir}/%{name}/plugins/fishlim.so
++++++ hexchat-migrate-sh ++++++
#!/bin/sh
# This script is for migrating the logs from xchat to
# hexchat automatically.
_DEBUG="off"
function DEBUG()
{
[ "$_DEBUG" == "on" ] && $@
}
XCHAT_DIR=~/.xchat2/
HEXCHAT_DIR=~/.config/hexchat/
SERVLIST_=servlist_.conf
SERVLIST=servlist.conf
SCROLL_PATH=scrollback/
XCHAT_LOGS=xchatlogs/
HEXCHAT_LOGS=logs/
CP_PATH=/usr/bin/cp
MV_PATH=/usr/bin/mv
MD_PATH=/usr/bin/mkdir
doCopyServlist(){
if [ -e $XCHAT_DIR$SERVLIST_ ]; then
if [ -d $HEXCHAT_DIR ]; then
$CP_PATH $XCHAT_DIR$SERVLIST_ $HEXCHAT_DIR$SERVLIST
else
DEBUG echo $HEXCHAT_DIR" does not exist"
fi
else
DEBUG echo "servlist does not exist"
fi
}
doCopyScroll(){
if [ -d $XCHAT_DIR$SCROLL_PATH ]; then
if [ -d $HEXCHAT_DIR ]; then
if [ ! -e $HEXCHAT_DIR$SCROLL_PATH ]; then
$CP_PATH -a $XCHAT_DIR$SCROLL_PATH $HEXCHAT_DIR$SCROLL_PATH
else
DEBUG echo $HEXCHAT_DIR$SCROLL_PATH" already exists"
fi
else
DEBUG echo $HEXCHAT_DIR" does not exist"
fi
else
DEBUG echo $XCHAT_DIR$SCROLL_PATH" does not exist"
fi
}
doCopyLogs(){
if [ -d $XCHAT_DIR$XCHAT_LOGS ]; then
if [ -d $HEXCHAT_DIR ]; then
if [ ! -e $HEXCHAT_DIR$HEXCHAT_LOGS ]; then
$CP_PATH -a $XCHAT_DIR$XCHAT_LOGS $HEXCHAT_DIR$HEXCHAT_LOGS
if [ -d $HEXCHAT_DIR$HEXCHAT_LOGS ]; then
for file in `ls $HEXCHAT_DIR$HEXCHAT_LOGS`
do
path=$file
paths=(${path//-/ })
$MD_PATH $HEXCHAT_DIR$HEXCHAT_LOGS${paths[0]}
$MV_PATH $HEXCHAT_DIR$HEXCHAT_LOGS$file $HEXCHAT_DIR$HEXCHAT_LOGS${paths[0]}/${paths[1]}
done
else
DEBUG echo "Copy fails"
fi
else
DEBUG echo $HEXCHAT_DIR$HEXCHAT_LOGS" already exists"
fi
else
DEBUG echo $HEXCHAT_DIR" does not exist"
fi
else
DEBUG echo $XCHAT_DIR$XCHAT_LOGS" does not exist"
fi
}
if [ -d $XCHAT_DIR ]; then
doCopyServlist
doCopyScroll
doCopyLogs
else
DEBUG echo $XCHAT_DIR" does not exsit. Stop migrating..."
fi
++++++ migrate-configuration-from-xchat.patch ++++++
--- /var/tmp/diff_new_pack.5etiTg/_old 2016-09-08 17:39:11.000000000 +0200
+++ /var/tmp/diff_new_pack.5etiTg/_new 2016-09-08 17:39:11.000000000 +0200
@@ -1,67 +1,53 @@
diff --git a/src/common/cfgfiles.c b/src/common/cfgfiles.c
-index 4bf2f47..1800d3f 100644
+index 4bf2f47..b2a4525 100644
--- a/src/common/cfgfiles.c
+++ b/src/common/cfgfiles.c
-@@ -950,6 +950,38 @@ make_dcc_dirs (void)
- return 0;
+@@ -911,6 +911,24 @@ load_default_config(void)
+ g_free (langs);
}
-+void migrate_from_xchat (void)
++void migrate_from_xchat(void)
+{
-+ char *servlist_conf, *logs_xchat;
-+ char *xchat_dir = g_build_filename (g_get_home_dir (), ".xchat2", NULL);
-+ if (!g_file_test (xchat_dir, G_FILE_TEST_EXISTS))
-+ {
-+ g_printf ("%s not exists",xchat_dir);
-+ g_free (xchat_dir);
-+ return;
-+ }
-+ servlist_conf = g_build_filename (xchat_dir, "servlist_.conf", NULL);
-+ if (g_file_test (servlist_conf, G_FILE_TEST_EXISTS))
-+ {
-+ char *servlist_target = g_build_filename (get_xdir (), "servlist_.conf", NULL);
-+ g_rename (servlist_conf, servlist_target);
-+ g_free (servlist_target);
-+ }
-+ g_free (servlist_conf);
-+
-+ logs_xchat = g_build_filename (xchat_dir, "xchatlogs", NULL);
-+ if (g_file_test (logs_xchat, G_FILE_TEST_EXISTS))
-+ {
-+ char *logs_hexchat = g_build_filename (get_xdir (), "logs", NULL);
-+ g_rename (logs_xchat, logs_hexchat);
-+ g_free (logs_hexchat);
-+ }
-+ g_free (logs_xchat);
-+
-+ g_free (xchat_dir);
++ int pid;
++
++ pid = fork();
++ switch (pid)
++ {
++ case -1:
++ g_warning("fork failed ");
++ return;
++ case 0:
++ execl("/bin/sh","sh", "-c", "/usr/lib64/hexchat/hexchat-migrate-sh",NULL);
++ _exit(0);
++ default:
++ return;
++ }
+}
+
-+
int
- load_config (void)
+ make_config_dirs (void)
{
diff --git a/src/common/cfgfiles.h b/src/common/cfgfiles.h
-index b421884..151e9bd 100644
+index b421884..a183a1c 100644
--- a/src/common/cfgfiles.h
+++ b/src/common/cfgfiles.h
@@ -41,6 +41,7 @@ int check_config_dir (void);
void load_default_config (void);
int make_config_dirs (void);
int make_dcc_dirs (void);
-+void migrate_from_xchat (void);
++void migrate_from_xchat(void);
int load_config (void);
int save_config (void);
void list_free (GSList ** list);
diff --git a/src/common/hexchat.c b/src/common/hexchat.c
-index caa20eb..056ae84 100644
+index caa20eb..4b22f73 100644
--- a/src/common/hexchat.c
+++ b/src/common/hexchat.c
@@ -1044,6 +1044,7 @@ main (int argc, char *argv[])
load_default_config ();
make_config_dirs ();
make_dcc_dirs ();
-+ migrate_from_xchat ();
++ migrate_from_xchat();
}
/* we MUST do this after load_config () AND before fe_init (thus gtk_init) otherwise it will fail */