wok-next rev 20334

Remove linux-uml & lxpanel-plugin-multiload
author Pascal Bellard <pascal.bellard@slitaz.org>
date Thu Nov 16 16:28:30 2017 +0100 (2017-11-16)
parents c5439f74a6c6
children e776229a8fef
files icinga/receipt incron/receipt linapple/receipt linux-dev/receipt linux-uml/receipt linux-uml/stuff/linux-hardlinks.u lxpanel-plugin-multiload/receipt miniupnpc/receipt waterline-plugin-multiload/receipt
line diff
     1.1 --- a/icinga/receipt	Wed Nov 15 16:27:09 2017 +0200
     1.2 +++ b/icinga/receipt	Thu Nov 16 16:28:30 2017 +0100
     1.3 @@ -11,12 +11,11 @@
     1.4  WGET_URL="$SF_MIRROR/$PACKAGE/$TARBALL"
     1.5  
     1.6  DEPENDS=""
     1.7 -BUILD_DEPENDS=""
     1.8 +BUILD_DEPENDS="perl"
     1.9  
    1.10  # Rules to configure and make the package.
    1.11  compile_rules()
    1.12  {
    1.13 -	cd $src
    1.14  	./configure \
    1.15  		--prefix=/usr \
    1.16  		--datadir=/usr/share/icinga \
     2.1 --- a/incron/receipt	Wed Nov 15 16:27:09 2017 +0200
     2.2 +++ b/incron/receipt	Thu Nov 16 16:28:30 2017 +0100
     2.3 @@ -16,6 +16,7 @@
     2.4  # Rules to configure and make the package.
     2.5  compile_rules()
     2.6  {
     2.7 +	sed -i 's|fcntl.h>|&\n#include <unistd.h>|' icd-main.cpp
     2.8  	sed -i 's|/usr/local|/usr|' Makefile
     2.9  	make &&
    2.10  	make DESTDIR=$DESTDIR install
     3.1 --- a/linapple/receipt	Wed Nov 15 16:27:09 2017 +0200
     3.2 +++ b/linapple/receipt	Thu Nov 16 16:28:30 2017 +0100
     3.3 @@ -19,6 +19,9 @@
     3.4  compile_rules()
     3.5  {
     3.6  	cd $src/src
     3.7 +	sed -i 's|sys/stat.h>|&\n#include <unistd.h>|' Frame.cpp
     3.8 +	sed -i 's|fcntl.h>|&\n#include <unistd.h>|' SerialComms.cpp
     3.9 +	sed -i 's|sys/time.h>|&\n#include <unistd.h>|' Timer.cpp Applewin.cpp
    3.10  	grep -q /usr/share/apple2 Applewin.cpp ||
    3.11  	sed -i 's|.*REGISTRY.*|\tchdir("/usr/share/apple2");\n&|' Applewin.cpp
    3.12  	make CXXFLAGS="-O3 -I/usr/lib/libzip/include -I/usr/include/SDL"
     4.1 --- a/linux-dev/receipt	Wed Nov 15 16:27:09 2017 +0200
     4.2 +++ b/linux-dev/receipt	Thu Nov 16 16:28:30 2017 +0100
     4.3 @@ -14,8 +14,8 @@
     4.4  
     4.5  DEPENDS="ncurses"
     4.6  BUILD_DEPENDS="python-sphinx perl xmlto util-linux-getopt docbook-xsl \
     4.7 -coreutils-operations findutils ncurses-dev patch bash"
     4.8 -SPLIT="linux-dev linux-man linux-api-headers"
     4.9 +coreutils-operations findutils ncurses-dev patch bash bc"
    4.10 +SPLIT="linux-dev linux-man linux-api-headers linux-uml"
    4.11  SIBLINGS="linux"
    4.12  COOKOPTS="!pngz !svgz !uiz"
    4.13  
    4.14 @@ -68,6 +68,64 @@
    4.15  	patch -p1 -i $stuff/installmandocs.patch
    4.16  
    4.17  	make mandocs && make installmandocs
    4.18 +
    4.19 +	sed -i 's/uname -m/echo i386/;s|/bin/bash|/bin/ash|g' Makefile
    4.20 +	make ARCH=um mrproper	
    4.21 +	cat > mini.config << EOF &&
    4.22 +CONFIG_BINFMT_ELF=y
    4.23 +CONFIG_LBD=y
    4.24 +CONFIG_BLK_DEV=y
    4.25 +CONFIG_BLK_DEV_LOOP=y
    4.26 +CONFIG_STDERR_CONSOLE=y
    4.27 +CONFIG_SSL=y
    4.28 +CONFIG_UNIX98_PTYS=y
    4.29 +CONFIG_PROC_FS=y
    4.30 +CONFIG_SYSFS_FS=y
    4.31 +CONFIG_IKCONFIG=y
    4.32 +CONFIG_IKCONFIG_PROC=y
    4.33 +CONFIG_UML_NET=y
    4.34 +CONFIG_UML_NET_TUNTAP=y
    4.35 +CONFIG_BLK_DEV_INITRD=y
    4.36 +CONFIG_PTY_CHAN=y
    4.37 +CONFIG_TTY_CHAN=y
    4.38 +CONFIG_NET=y
    4.39 +CONFIG_INET=y
    4.40 +CONFIG_UML_NET=y
    4.41 +CONFIG_UML_NET_TUNTAP=y
    4.42 +CONFIG_BLK_DEV_UBD=y
    4.43 +CONFIG_EXT4_FS=y
    4.44 +CONFIG_EXT4_USE_FOR_EXT23=y
    4.45 +CONFIG_EXT4_FS_XATTR=y
    4.46 +CONFIG_EXT4_FS_POSIX_ACL=y
    4.47 +CONFIG_FUSE_FS=y
    4.48 +CONFIG_ISO9660_FS=y
    4.49 +CONFIG_VFAT_FS=y
    4.50 +CONFIG_TMPFS=y
    4.51 +CONFIG_SWAP=y
    4.52 +CONFIG_SYSVIPC=y
    4.53 +CONFIG_SYSVIPC_SYSCTL=y
    4.54 +CONFIG_SYSVIPC_COMPAT=y
    4.55 +CONFIG_PACKET=y            
    4.56 +CONFIG_UNIX=y              
    4.57 +CONFIG_NETFILTER=y        
    4.58 +CONFIG_NETFILTER_ADVANCED=y
    4.59 +CONFIG_NF_CONNTRACK=y
    4.60 +CONFIG_NETFILTER_XTABLES=y
    4.61 +CONFIG_NF_DEFRAG_IPV4=y
    4.62 +CONFIG_NF_CONNTRACK_IPV4=y
    4.63 +CONFIG_NF_CONNTRACK_PROC_COMPAT=y
    4.64 +CONFIG_IP_NF_IPTABLES=y
    4.65 +CONFIG_IP_NF_FILTER=y
    4.66 +CONFIG_IP_NF_TARGET_REJECT=y
    4.67 +CONFIG_NF_NAT=y
    4.68 +CONFIG_NF_NAT_NEEDED=y
    4.69 +CONFIG_IP_NF_TARGET_MASQUERADE=y
    4.70 +CONFIG_IP_NF_TARGET_REDIRECT=y
    4.71 +CONFIG_NETDEVICES=y
    4.72 +CONFIG_TUN=y
    4.73 +EOF
    4.74 +	make ARCH=um allnoconfig KCONFIG_ALLCONFIG=mini.config &&
    4.75 +	make ARCH=um
    4.76  }
    4.77  
    4.78  
    4.79 @@ -88,5 +146,29 @@
    4.80  		CAT="development|headers sanitized for use in userspace"
    4.81  		PROVIDE="linux-headers linux64-api-headers linux64-headers"
    4.82  		;;
    4.83 +	linux-uml)
    4.84 +		mkdir -p $fs/boot
    4.85 +		cp $src/linux $fs/boot/linux-uml-$VERSION
    4.86 +		cat > $fs/boot/vm-uml <<EOT
    4.87 +#!/bin/sh
    4.88 +
    4.89 +# /etc/inittab: "tty21::respawn:/bin/su -c '/boot/vm-uml 1 /boot/guests/slitaz.img 2 512m' nobody"
    4.90 +n=\${1:-0}
    4.91 +tap=tap\$n
    4.92 +args="rw root=/dev/null"
    4.93 +dev="initrd=\$(ls -r /boot/rootfs*.gz | sed q)"
    4.94 +if [ -n "\$2" ]; then
    4.95 +	args="ro root=620\${3:-1} screen=text sound=noconf"
    4.96 +	dev="ubd0=\$2"
    4.97 +fi
    4.98 +
    4.99 +cd \$(dirname \$0)
   4.100 +ifconfig \$tap 192.168.\$n.1
   4.101 +./linux-uml-$VERSION \$dev mem=\${4:-512m} fakehd fake_ide ubd=3 con0=fd:0,fd:1 \\
   4.102 +	con=pts ssl=pts eth0=tuntap,\$tap,fe:f0:00:00:00:0\$n,192.168.\$n.1 \\
   4.103 +	\$args cpuinfo=\$(sed '/model name/!d;s/.*: //;s/ /_/g;q' /proc/cpuinfo)
   4.104 +EOT
   4.105 +		chmod 755 $fs/boot/vm-uml
   4.106 +		;;
   4.107  	esac
   4.108  }
     5.1 --- a/linux-uml/receipt	Wed Nov 15 16:27:09 2017 +0200
     5.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.3 @@ -1,114 +0,0 @@
     5.4 -# SliTaz package receipt.
     5.5 -
     5.6 -PACKAGE="linux-uml"
     5.7 -SOURCE="linux"
     5.8 -VERSION="3.2.71"
     5.9 -KBASEVER="3.2"
    5.10 -CATEGORY="base-system"
    5.11 -SHORT_DESC="The User Mode Linux kernel."
    5.12 -MAINTAINER="pascal.bellard@slitaz.org"
    5.13 -LICENSE="GPL2"
    5.14 -TARBALL="$SOURCE-$KBASEVER.tar.xz"
    5.15 -WEB_SITE="https://www.kernel.org/"
    5.16 -WGET_URL="${WEB_SITE}pub/linux/kernel/v3.0/$TARBALL"
    5.17 -[ "$KBASEVER" != "$VERSION" ] && 
    5.18 -PATCH="$(dirname $WGET_URL)/patch-$VERSION.xz" &&
    5.19 -EXTRA_SOURCE_FILES="$(basename $PATCH)"
    5.20 -
    5.21 -BUILD_DEPENDS="wget bash perl"
    5.22 -
    5.23 -# Rules to configure and make the package.
    5.24 -compile_rules()
    5.25 -{
    5.26 -	if [ "$KBASEVER" != "$VERSION" ]; then
    5.27 -		[ -s $SRC/$(basename $PATCH) ] ||
    5.28 -		wget $PATCH -O $SRC/$(basename $PATCH)
    5.29 -		xzcat $SRC/$(basename $PATCH) | patch -Np1
    5.30 -		touch done.patch-$VERSION
    5.31 -	fi
    5.32 -	patch -p1 < $stuff/linux-hardlinks.u
    5.33 -	sed -i 's/uname -m/echo i386/;s|/bin/bash|/bin/ash|g' Makefile
    5.34 -	make ARCH=um mrproper	
    5.35 -	cat > mini.config << EOF &&
    5.36 -CONFIG_BINFMT_ELF=y
    5.37 -CONFIG_LBD=y
    5.38 -CONFIG_BLK_DEV=y
    5.39 -CONFIG_BLK_DEV_LOOP=y
    5.40 -CONFIG_STDERR_CONSOLE=y
    5.41 -CONFIG_SSL=y
    5.42 -CONFIG_UNIX98_PTYS=y
    5.43 -CONFIG_PROC_FS=y
    5.44 -CONFIG_SYSFS_FS=y
    5.45 -CONFIG_IKCONFIG=y
    5.46 -CONFIG_IKCONFIG_PROC=y
    5.47 -CONFIG_UML_NET=y
    5.48 -CONFIG_UML_NET_TUNTAP=y
    5.49 -CONFIG_BLK_DEV_INITRD=y
    5.50 -CONFIG_PTY_CHAN=y
    5.51 -CONFIG_TTY_CHAN=y
    5.52 -CONFIG_NET=y
    5.53 -CONFIG_INET=y
    5.54 -CONFIG_UML_NET=y
    5.55 -CONFIG_UML_NET_TUNTAP=y
    5.56 -CONFIG_BLK_DEV_UBD=y
    5.57 -CONFIG_EXT4_FS=y
    5.58 -CONFIG_EXT4_USE_FOR_EXT23=y
    5.59 -CONFIG_EXT4_FS_XATTR=y
    5.60 -CONFIG_EXT4_FS_POSIX_ACL=y
    5.61 -CONFIG_FUSE_FS=y
    5.62 -CONFIG_ISO9660_FS=y
    5.63 -CONFIG_VFAT_FS=y
    5.64 -CONFIG_TMPFS=y
    5.65 -CONFIG_SWAP=y
    5.66 -CONFIG_SYSVIPC=y
    5.67 -CONFIG_SYSVIPC_SYSCTL=y
    5.68 -CONFIG_SYSVIPC_COMPAT=y
    5.69 -CONFIG_PACKET=y            
    5.70 -CONFIG_UNIX=y              
    5.71 -CONFIG_NETFILTER=y        
    5.72 -CONFIG_NETFILTER_ADVANCED=y
    5.73 -CONFIG_NF_CONNTRACK=y
    5.74 -CONFIG_NETFILTER_XTABLES=y
    5.75 -CONFIG_NF_DEFRAG_IPV4=y
    5.76 -CONFIG_NF_CONNTRACK_IPV4=y
    5.77 -CONFIG_NF_CONNTRACK_PROC_COMPAT=y
    5.78 -CONFIG_IP_NF_IPTABLES=y
    5.79 -CONFIG_IP_NF_FILTER=y
    5.80 -CONFIG_IP_NF_TARGET_REJECT=y
    5.81 -CONFIG_NF_NAT=y
    5.82 -CONFIG_NF_NAT_NEEDED=y
    5.83 -CONFIG_IP_NF_TARGET_MASQUERADE=y
    5.84 -CONFIG_IP_NF_TARGET_REDIRECT=y
    5.85 -CONFIG_NETDEVICES=y
    5.86 -CONFIG_TUN=y
    5.87 -EOF
    5.88 -	make ARCH=um allnoconfig KCONFIG_ALLCONFIG=mini.config &&
    5.89 -	make ARCH=um
    5.90 -} 
    5.91 -
    5.92 -# Rules to gen a SliTaz package suitable for Tazpkg.
    5.93 -genpkg_rules()
    5.94 -{
    5.95 -	mkdir -p $fs/boot
    5.96 -	cp $src/linux $fs/boot/linux-uml-$VERSION
    5.97 -	cat > $fs/boot/vm-uml <<EOT
    5.98 -#!/bin/sh
    5.99 -
   5.100 -# /etc/inittab: "tty21::respawn:/bin/su -c '/boot/vm-uml 1 /boot/guests/slitaz.img 2 512m' nobody"
   5.101 -n=\${1:-0}
   5.102 -tap=tap\$n
   5.103 -args="rw root=/dev/null"
   5.104 -dev="initrd=\$(ls -r /boot/rootfs*.gz | sed q)"
   5.105 -if [ -n "\$2" ]; then
   5.106 -	args="ro root=620\${3:-1} screen=text sound=noconf"
   5.107 -	dev="ubd0=\$2"
   5.108 -fi
   5.109 -
   5.110 -cd \$(dirname \$0)
   5.111 -ifconfig \$tap 192.168.\$n.1
   5.112 -./linux-uml-$VERSION \$dev mem=\${4:-512m} fakehd fake_ide ubd=3 con0=fd:0,fd:1 \\
   5.113 -	con=pts ssl=pts eth0=tuntap,\$tap,fe:f0:00:00:00:0\$n,192.168.\$n.1 \\
   5.114 -	\$args cpuinfo=\$(sed '/model name/!d;s/.*: //;s/ /_/g;q' /proc/cpuinfo)
   5.115 -EOT
   5.116 -	chmod 755 $fs/boot/vm-uml
   5.117 -}
     6.1 --- a/linux-uml/stuff/linux-hardlinks.u	Wed Nov 15 16:27:09 2017 +0200
     6.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.3 @@ -1,244 +0,0 @@
     6.4 -Fix hardlink on fifos, sockets, char & block devices and symlinks
     6.5 ---- linux-3.2.53/init/initramfs.c
     6.6 -+++ linux-3.2.53/init/initramfs.c
     6.7 -@@ -20,10 +20,24 @@
     6.8 - 
     6.9 - #define N_ALIGN(len) ((((len) + 1) & ~3) + 2)
    6.10 - 
    6.11 -+static __initdata unsigned long ino, major, minor, nlink;
    6.12 -+static __initdata time_t mtime;
    6.13 -+static __initdata mode_t mode;
    6.14 -+static __initdata unsigned long body_len, name_len;
    6.15 -+static __initdata uid_t uid;
    6.16 -+static __initdata gid_t gid;
    6.17 -+static __initdata unsigned rdev;
    6.18 -+
    6.19 -+struct names {
    6.20 -+	struct names *next;
    6.21 -+	char name[1];
    6.22 -+};
    6.23 -+
    6.24 - static __initdata struct hash {
    6.25 --	int ino, minor, major;
    6.26 -+	int ino, nlink, minor, major;
    6.27 - 	mode_t mode;
    6.28 - 	struct hash *next;
    6.29 -+	struct names *next_name;
    6.30 - 	char name[N_ALIGN(PATH_MAX)];
    6.31 - } *head[32];
    6.32 - 
    6.33 -@@ -34,8 +48,7 @@
    6.34 - 	return tmp & 31;
    6.35 - }
    6.36 - 
    6.37 --static char __init *find_link(int major, int minor, int ino,
    6.38 --			      mode_t mode, char *name)
    6.39 -+static struct hash  __init *find_link(char *name)
    6.40 - {
    6.41 - 	struct hash **p, *q;
    6.42 - 	for (p = head + hash(major, minor, ino); *p; p = &(*p)->next) {
    6.43 -@@ -47,7 +60,16 @@
    6.44 - 			continue;
    6.45 - 		if (((*p)->mode ^ mode) & S_IFMT)
    6.46 - 			continue;
    6.47 --		return (*p)->name;
    6.48 -+		if (--(*p)->nlink) {
    6.49 -+			struct names **n;
    6.50 -+			for (n = &(*p)->next_name; *n; n = &(*n)->next);
    6.51 -+			*n = kmalloc(sizeof(struct names) + strlen(name), GFP_KERNEL);
    6.52 -+			if (!*n)
    6.53 -+				panic("can't allocate link name entry");
    6.54 -+			strcpy((*n)->name, name);
    6.55 -+			(*n)->next = NULL;
    6.56 -+		}
    6.57 -+		return *p;
    6.58 - 	}
    6.59 - 	q = kmalloc(sizeof(struct hash), GFP_KERNEL);
    6.60 - 	if (!q)
    6.61 -@@ -55,11 +77,13 @@
    6.62 - 	q->major = major;
    6.63 - 	q->minor = minor;
    6.64 - 	q->ino = ino;
    6.65 -+	q->nlink = nlink;
    6.66 - 	q->mode = mode;
    6.67 - 	strcpy(q->name, name);
    6.68 -+	q->next_name = NULL;
    6.69 - 	q->next = NULL;
    6.70 - 	*p = q;
    6.71 --	return NULL;
    6.72 -+	return q;
    6.73 - }
    6.74 - 
    6.75 - static void __init free_hash(void)
    6.76 -@@ -115,17 +139,8 @@
    6.77 - 	}
    6.78 - }
    6.79 - 
    6.80 --static __initdata time_t mtime;
    6.81 --
    6.82 - /* cpio header parsing */
    6.83 - 
    6.84 --static __initdata unsigned long ino, major, minor, nlink;
    6.85 --static __initdata mode_t mode;
    6.86 --static __initdata unsigned long body_len, name_len;
    6.87 --static __initdata uid_t uid;
    6.88 --static __initdata gid_t gid;
    6.89 --static __initdata unsigned rdev;
    6.90 --
    6.91 - static void __init parse_header(char *s)
    6.92 - {
    6.93 - 	unsigned long parsed[12];
    6.94 -@@ -193,7 +208,7 @@
    6.95 - 	}
    6.96 - }
    6.97 - 
    6.98 --static __initdata char *header_buf, *symlink_buf, *name_buf;
    6.99 -+static __initdata char *header_buf, *name_buf;
   6.100 - 
   6.101 - static int __init do_start(void)
   6.102 - {
   6.103 -@@ -231,17 +246,9 @@
   6.104 - 	state = SkipIt;
   6.105 - 	if (name_len <= 0 || name_len > PATH_MAX)
   6.106 - 		return 0;
   6.107 --	if (S_ISLNK(mode)) {
   6.108 --		if (body_len > PATH_MAX)
   6.109 --			return 0;
   6.110 --		collect = collected = symlink_buf;
   6.111 --		remains = N_ALIGN(name_len) + body_len;
   6.112 --		next_state = GotSymlink;
   6.113 --		state = Collect;
   6.114 -+	if (S_ISLNK(mode) && (body_len > PATH_MAX))
   6.115 - 		return 0;
   6.116 --	}
   6.117 --	if (S_ISREG(mode) || !body_len)
   6.118 --		read_into(name_buf, N_ALIGN(name_len), GotName);
   6.119 -+	read_into(name_buf, N_ALIGN(name_len), GotName);
   6.120 - 	return 0;
   6.121 - }
   6.122 - 
   6.123 -@@ -269,13 +276,34 @@
   6.124 - static int __init maybe_link(void)
   6.125 - {
   6.126 - 	if (nlink >= 2) {
   6.127 --		char *old = find_link(major, minor, ino, mode, collected);
   6.128 --		if (old)
   6.129 --			return (sys_link(old, collected) < 0) ? -1 : 1;
   6.130 -+		struct hash *p = find_link(collected);
   6.131 -+		if (p->nlink >= 2)
   6.132 -+			return 1;
   6.133 - 	}
   6.134 - 	return 0;
   6.135 - }
   6.136 - 
   6.137 -+static void __init walk_names(struct names *p, char *name)
   6.138 -+{
   6.139 -+	if (!p)
   6.140 -+		return;
   6.141 -+	walk_names(p->next, name);
   6.142 -+	sys_link(name, p->name);
   6.143 -+	kfree(p);
   6.144 -+}
   6.145 -+
   6.146 -+static void __init make_links(char *name)
   6.147 -+{
   6.148 -+	if (nlink >= 2) {
   6.149 -+		struct hash *p = find_link(name);
   6.150 -+		if (!p->nlink) {
   6.151 -+			walk_names(p->next_name, name);
   6.152 -+			sys_link(name, p->name);
   6.153 -+			p->next_name = NULL;
   6.154 -+		}
   6.155 -+	}
   6.156 -+}
   6.157 -+
   6.158 - static void __init clean_path(char *path, mode_t mode)
   6.159 - {
   6.160 - 	struct stat st;
   6.161 -@@ -300,11 +328,8 @@
   6.162 - 	}
   6.163 - 	clean_path(collected, mode);
   6.164 - 	if (S_ISREG(mode)) {
   6.165 --		int ml = maybe_link();
   6.166 --		if (ml >= 0) {
   6.167 --			int openflags = O_WRONLY|O_CREAT;
   6.168 --			if (ml != 1)
   6.169 --				openflags |= O_TRUNC;
   6.170 -+		if (maybe_link() == 0) {
   6.171 -+			int openflags = O_WRONLY|O_CREAT|O_TRUNC;
   6.172 - 			wfd = sys_open(collected, openflags, mode);
   6.173 - 
   6.174 - 			if (wfd >= 0) {
   6.175 -@@ -316,6 +341,11 @@
   6.176 - 				state = CopyFile;
   6.177 - 			}
   6.178 - 		}
   6.179 -+	} else if (S_ISLNK(mode)) {
   6.180 -+		if (maybe_link() == 0) {
   6.181 -+			vcollected = kstrdup(collected, GFP_KERNEL);
   6.182 -+			state = GotSymlink;
   6.183 -+		}
   6.184 - 	} else if (S_ISDIR(mode)) {
   6.185 - 		sys_mkdir(collected, mode);
   6.186 - 		sys_chown(collected, uid, gid);
   6.187 -@@ -328,6 +358,7 @@
   6.188 - 			sys_chown(collected, uid, gid);
   6.189 - 			sys_chmod(collected, mode);
   6.190 - 			do_utime(collected, mtime);
   6.191 -+			make_links(collected);
   6.192 - 		}
   6.193 - 	}
   6.194 - 	return 0;
   6.195 -@@ -339,6 +370,7 @@
   6.196 - 		sys_write(wfd, victim, body_len);
   6.197 - 		sys_close(wfd);
   6.198 - 		do_utime(vcollected, mtime);
   6.199 -+		make_links(vcollected);
   6.200 - 		kfree(vcollected);
   6.201 - 		eat(body_len);
   6.202 - 		state = SkipIt;
   6.203 -@@ -353,13 +385,18 @@
   6.204 - 
   6.205 - static int __init do_symlink(void)
   6.206 - {
   6.207 --	collected[N_ALIGN(name_len) + body_len] = '\0';
   6.208 --	clean_path(collected, 0);
   6.209 --	sys_symlink(collected + N_ALIGN(name_len), collected);
   6.210 --	sys_lchown(collected, uid, gid);
   6.211 --	do_utime(collected, mtime);
   6.212 -+	char c = victim[body_len];
   6.213 -+
   6.214 -+	victim[body_len] = '\0';
   6.215 -+	clean_path(vcollected, 0);
   6.216 -+	sys_symlink(victim, vcollected);
   6.217 -+	victim[body_len] = c;
   6.218 -+	sys_lchown(vcollected, uid, gid);
   6.219 -+	do_utime(vcollected, mtime);
   6.220 -+	make_links(vcollected);
   6.221 -+	kfree(vcollected);
   6.222 -+	eat(body_len);
   6.223 - 	state = SkipIt;
   6.224 --	next_state = Reset;
   6.225 - 	return 0;
   6.226 - }
   6.227 - 
   6.228 -@@ -419,10 +456,9 @@
   6.229 - 	static __initdata char msg_buf[64];
   6.230 - 
   6.231 - 	header_buf = kmalloc(110, GFP_KERNEL);
   6.232 --	symlink_buf = kmalloc(PATH_MAX + N_ALIGN(PATH_MAX) + 1, GFP_KERNEL);
   6.233 - 	name_buf = kmalloc(N_ALIGN(PATH_MAX), GFP_KERNEL);
   6.234 - 
   6.235 --	if (!header_buf || !symlink_buf || !name_buf)
   6.236 -+	if (!header_buf || !name_buf)
   6.237 - 		panic("can't allocate buffers");
   6.238 - 
   6.239 - 	state = Start;
   6.240 -@@ -467,7 +503,6 @@
   6.241 - 	}
   6.242 - 	dir_utime();
   6.243 - 	kfree(name_buf);
   6.244 --	kfree(symlink_buf);
   6.245 - 	kfree(header_buf);
   6.246 - 	return message;
   6.247 - }
     7.1 --- a/lxpanel-plugin-multiload/receipt	Wed Nov 15 16:27:09 2017 +0200
     7.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.3 @@ -1,19 +0,0 @@
     7.4 -# SliTaz package receipt.
     7.5 -
     7.6 -PACKAGE="lxpanel-plugin-multiload"
     7.7 -VERSION="f8b592a"
     7.8 -CATEGORY="x-window"
     7.9 -SHORT_DESC="multiload-nandhp is a port of the GNOME multiload applet to LXDE panel"
    7.10 -MAINTAINER="psychomaniak@xakep.ru"
    7.11 -LICENSE="GPL2"
    7.12 -WEB_SITE="http://git.make-linux.org/sde/waterline-plugin-multiload.git/tree/README.md"
    7.13 -WANTED="waterline-plugin-multiload"
    7.14 -
    7.15 -DEPENDS="lxpanel libgtop"
    7.16 -
    7.17 -# Rules to gen a SliTaz package suitable for Tazpkg.
    7.18 -genpkg_rules()
    7.19 -{
    7.20 -	mkdir -p $fs/usr/lib/lxpanel/plugins
    7.21 -	cp -a $install/usr/lib/lxpanel/plugins/*.so $fs/usr/lib/lxpanel/plugins
    7.22 -}
     8.1 --- a/miniupnpc/receipt	Wed Nov 15 16:27:09 2017 +0200
     8.2 +++ b/miniupnpc/receipt	Thu Nov 16 16:28:30 2017 +0100
     8.3 @@ -24,7 +24,7 @@
     8.4  # Rules to gen a SliTaz package suitable for Tazpkg.
     8.5  genpkg_rules()
     8.6  {
     8.7 -	case $PAKAGE in
     8.8 +	case $PACKAGE in
     8.9  	miniupnpc)
    8.10  		DEPENDS=""
    8.11  		mkdir -p $fs/usr/lib
     9.1 --- a/waterline-plugin-multiload/receipt	Wed Nov 15 16:27:09 2017 +0200
     9.2 +++ b/waterline-plugin-multiload/receipt	Thu Nov 16 16:28:30 2017 +0100
     9.3 @@ -1,4 +1,4 @@
     9.4 -# SliTaz package receipt.
     9.5 +# SliTaz package receipt v2.
     9.6  
     9.7  PACKAGE="waterline-plugin-multiload"
     9.8  VERSION="f8b592a"
     9.9 @@ -11,11 +11,11 @@
    9.10  WGET_URL="http://git.make-linux.org/sde/$PACKAGE.git/snapshot/$TARBALL"
    9.11  TAGS="desktop panel"
    9.12  
    9.13 -DEPENDS="waterline libgtop"
    9.14  BUILD_DEPENDS="automake libtool intltool gtk+-dev jansson-dev libsde-utils \
    9.15  libsde-utils-x11 libsde-utils-jansson libsde-utils-gtk \
    9.16  xorg-libXcomposite-dev menu-cache-dev alsa-lib-dev xz \
    9.17  libgtop-dev lxpanel-dev waterline-dev xorg-dev intltool gettext"
    9.18 +SPLIT="waterline-plugin-multiload lxpanel-plugin-multiload"
    9.19  
    9.20  # Rules to configure and make the package.
    9.21  compile_rules()
    9.22 @@ -42,6 +42,16 @@
    9.23  # Rules to gen a SliTaz package suitable for Tazpkg.
    9.24  genpkg_rules()
    9.25  {
    9.26 -	mkdir -p $fs/usr/lib/waterline/plugins
    9.27 -	cp -a $install/usr/lib/waterline/plugins/*.so $fs/usr/lib/waterline/plugins
    9.28 +	case $PACKAGE in
    9.29 +	waterline-plugin-multiload)
    9.30 +		DEPENDS="waterline libgtop"
    9.31 +		mkdir -p $fs/usr/lib/waterline/plugins
    9.32 +		cp -a $install/usr/lib/waterline/plugins/*.so $fs/usr/lib/waterline/plugins
    9.33 +		;;
    9.34 +	lxpanel-plugin-multiload)
    9.35 +		DEPENDS="lxpanel libgtop"
    9.36 +		mkdir -p $fs/usr/lib/lxpanel/plugins
    9.37 +		cp -a $install/usr/lib/lxpanel/plugins/*.so $fs/usr/lib/lxpanel/plugins
    9.38 +		;;
    9.39 +	esac
    9.40  }