diff --git a/hardware/disk/disktype/Makefile içindeki derleyici gcc olarak değiştirildi b/hardware/disk/disktype/Makefile içindeki derleyici gcc olarak değiştirildi new file mode 100644 index 00000000..8d1c8b69 --- /dev/null +++ b/hardware/disk/disktype/Makefile içindeki derleyici gcc olarak değiştirildi @@ -0,0 +1 @@ + diff --git a/hardware/disk/disktype/actions.py b/hardware/disk/disktype/actions.py new file mode 100644 index 00000000..2a353ba2 --- /dev/null +++ b/hardware/disk/disktype/actions.py @@ -0,0 +1,19 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import shelltools +from pisi.actionsapi import get + +def build(): + shelltools.export("CCACHE_DIR", "%s" % get.workDIR()) + autotools.make('CFLAGS="%s -fno-stack-protector -fno-strict-aliasing"' % get.CFLAGS()) + +def install(): + pisitools.dobin("disktype") + pisitools.doman("disktype.1") + pisitools.dodoc("README", "HISTORY", "TODO") diff --git a/hardware/disk/disktype/files/disktype.patch b/hardware/disk/disktype/files/disktype.patch new file mode 100644 index 00000000..f130a9d6 --- /dev/null +++ b/hardware/disk/disktype/files/disktype.patch @@ -0,0 +1,80 @@ +diff -ur disktype-9.orig/linux.c disktype-9/linux.c +--- disktype-9.orig/linux.c 2006-06-04 23:05:06.000000000 +0300 ++++ disktype-9/linux.c 2007-02-14 14:34:36.749572288 +0200 +@@ -43,11 +43,20 @@ + + if (get_le_short(buf + 56) == 0xEF53) { + if (get_le_long(buf + 96) & 0x0008) /* JOURNAL_DEV flag */ ++ { + print_line(level, "Ext3 external journal"); ++ print_line(level, "KERNELMODULE: ext3"); ++ } + else if (get_le_long(buf + 92) & 0x0004) /* HAS_JOURNAL flag */ ++ { + print_line(level, "Ext3 file system"); ++ print_line(level, "KERNELMODULE: ext3"); ++ } + else ++ { + print_line(level, "Ext2 file system"); ++ print_line(level, "KERNELMODULE: ext2"); ++ } + + get_string(buf + 120, 16, s); + if (s[0]) +@@ -93,19 +102,24 @@ + /* check signature */ + if (memcmp(buf + 52, "ReIsErFs", 8) == 0) { + print_line(level, "ReiserFS file system (old 3.5 format, standard journal, starts at %d KiB)", at); ++ print_line(level, "KERNELMODULE: reiserfs"); + newformat = 0; + } else if (memcmp(buf + 52, "ReIsEr2Fs", 9) == 0) { + print_line(level, "ReiserFS file system (new 3.6 format, standard journal, starts at %d KiB)", at); ++ print_line(level, "KERNELMODULE: reiserfs"); + newformat = 1; + } else if (memcmp(buf + 52, "ReIsEr3Fs", 9) == 0) { + newformat = get_le_short(buf + 72); + if (newformat == 0) { + print_line(level, "ReiserFS file system (old 3.5 format, non-standard journal, starts at %d KiB)", at); ++ print_line(level, "KERNELMODULE: reiserfs"); + } else if (newformat == 2) { + print_line(level, "ReiserFS file system (new 3.6 format, non-standard journal, starts at %d KiB)", at); ++ print_line(level, "KERNELMODULE: reiserfs"); + newformat = 1; + } else { + print_line(level, "ReiserFS file system (v3 magic, but unknown version %d, starts at %d KiB)", newformat, at); ++ print_line(level, "KERNELMODULE: reiserfs"); + continue; + } + } else +diff -ur disktype-9.orig/Makefile disktype-9/Makefile +--- disktype-9.orig/Makefile 2006-01-12 19:55:15.000000000 +0200 ++++ disktype-9/Makefile 2007-02-14 14:24:30.917995693 +0200 +@@ -3,7 +3,7 @@ + ### + + RM = rm -f +-CC = gcc ++CC = klcc + + OBJS = main.o lib.o \ + buffer.o file.o cdaccess.o cdimage.o vpc.o compressed.o \ +diff -ur disktype-9.orig/unix.c disktype-9/unix.c +--- disktype-9.orig/unix.c 2003-12-30 12:10:41.000000000 +0200 ++++ disktype-9/unix.c 2007-02-14 14:27:48.529848766 +0200 +@@ -49,6 +49,7 @@ + /* tell the user */ + version = get_le_long(buf + 4); + print_line(level, "JFS file system, version %d", version); ++ print_line(level, "KERNELMODULE: jfs"); + + get_string(buf + 101, 11, s); + print_line(level + 1, "Volume name \"%s\"", s); +@@ -82,6 +83,7 @@ + raw_version = get_be_short(buf + 0x64); + version = raw_version & 0x000f; + print_line(level, "XFS file system, version %d", version); ++ print_line(level, "KERNELMODULE: xfs"); + + get_string(buf + 0x6c, 12, s); + print_line(level + 1, "Volume name \"%s\"", s); diff --git a/hardware/disk/disktype/files/ext4.patch b/hardware/disk/disktype/files/ext4.patch new file mode 100644 index 00000000..f67d35fc --- /dev/null +++ b/hardware/disk/disktype/files/ext4.patch @@ -0,0 +1,112 @@ + + We first get some sane ext3 poperties and try to match the invert +of these with the filesystems related supoerblock sections. If we find +something not related to ext3 and have journal, we guess the filesystem +is of ext4 type. Then by checking EXT2_FLAGS_TEST_FILESYS in s_flags +section we distinguish ext4 and ext4dev. There may be a better way but +this is the way current e2fsprogs blkid probe does it. Ext4 sections +and flags are taken from the kernel headers of 2.6.25 where ext4 is +still marked as dev. + + Onur Küçük + + +diff -Nur disktype-9-old/detect.c disktype-9/detect.c +--- disktype-9-old/detect.c 2009-03-09 12:38:20.000000000 +0200 ++++ disktype-9/detect.c 2009-03-09 12:38:33.000000000 +0200 +@@ -59,7 +59,7 @@ + void detect_udf(SECTION *section, int level); + + /* in linux.c */ +-void detect_ext23(SECTION *section, int level); ++void detect_ext234(SECTION *section, int level); + void detect_reiser(SECTION *section, int level); + void detect_reiser4(SECTION *section, int level); + void detect_linux_raid(SECTION *section, int level); +@@ -136,7 +136,7 @@ + detect_udf, + detect_cdrom_misc, + detect_iso, +- detect_ext23, ++ detect_ext234, + detect_reiser, + detect_reiser4, + detect_linux_raid, +diff -Nur disktype-9-old/linux.c disktype-9/linux.c +--- disktype-9-old/linux.c 2009-03-09 12:38:20.000000000 +0200 ++++ disktype-9/linux.c 2009-03-09 12:38:29.000000000 +0200 +@@ -28,10 +28,43 @@ + #include "global.h" + + /* +- * ext2/ext3 file system ++ * ext2/ext3/ext4 file system + */ + +-void detect_ext23(SECTION *section, int level) ++/* for s_flags */ ++#define EXT2_FLAGS_TEST_FILESYS 0x0004 ++ ++/* for s_feature_compat */ ++#define EXT3_FEATURE_COMPAT_HAS_JOURNAL 0x0004 ++ ++/* for s_feature_ro_compat */ ++#define EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER 0x0001 ++#define EXT2_FEATURE_RO_COMPAT_LARGE_FILE 0x0002 ++#define EXT2_FEATURE_RO_COMPAT_BTREE_DIR 0x0004 ++#define EXT4_FEATURE_RO_COMPAT_HUGE_FILE 0x0008 ++#define EXT4_FEATURE_RO_COMPAT_GDT_CSUM 0x0010 ++#define EXT4_FEATURE_RO_COMPAT_DIR_NLINK 0x0020 ++#define EXT4_FEATURE_RO_COMPAT_EXTRA_ISIZE 0x0040 ++ ++/* for s_feature_incompat */ ++#define EXT2_FEATURE_INCOMPAT_FILETYPE 0x0002 ++#define EXT3_FEATURE_INCOMPAT_RECOVER 0x0004 ++#define EXT3_FEATURE_INCOMPAT_JOURNAL_DEV 0x0008 ++#define EXT2_FEATURE_INCOMPAT_META_BG 0x0010 ++#define EXT4_FEATURE_INCOMPAT_EXTENTS 0x0040 ++#define EXT4_FEATURE_INCOMPAT_64BIT 0x0080 ++#define EXT4_FEATURE_INCOMPAT_MMP 0x0100 ++#define EXT4_FEATURE_INCOMPAT_FLEX_BG 0x0200 ++ ++#define EXT3_FEATURE_RO_COMPAT_UNSUPPORTED ~(EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER | \ ++ EXT2_FEATURE_RO_COMPAT_LARGE_FILE | \ ++ EXT2_FEATURE_RO_COMPAT_BTREE_DIR) ++ ++#define EXT3_FEATURE_INCOMPAT_UNSUPPORTED ~(EXT2_FEATURE_INCOMPAT_FILETYPE | \ ++ EXT3_FEATURE_INCOMPAT_RECOVER | \ ++ EXT2_FEATURE_INCOMPAT_META_BG) ++ ++void detect_ext234(SECTION *section, int level) + { + unsigned char *buf; + char s[256]; +@@ -49,8 +82,26 @@ + } + else if (get_le_long(buf + 92) & 0x0004) /* HAS_JOURNAL flag */ + { +- print_line(level, "Ext3 file system"); +- print_line(level, "KERNELMODULE: ext3"); ++ /* Try to find if it is ext4 by checking if there are any unsupported features of ext3 */ ++ if ((get_le_long(buf + 96) & EXT3_FEATURE_INCOMPAT_UNSUPPORTED) && (get_le_long(buf + 100) & EXT3_FEATURE_RO_COMPAT_UNSUPPORTED)) ++ { ++ /* We have ext4 but which version */ ++ if (get_le_long(buf + 352) & EXT2_FLAGS_TEST_FILESYS) ++ { ++ print_line(level, "Ext4dev file system"); ++ print_line(level, "KERNELMODULE: ext4dev"); ++ } ++ else ++ { ++ print_line(level, "Ext4 file system"); ++ print_line(level, "KERNELMODULE: ext4"); ++ } ++ } ++ else ++ { ++ print_line(level, "Ext3 file system"); ++ print_line(level, "KERNELMODULE: ext3"); ++ } + } + else + { diff --git a/hardware/disk/disktype/files/vfat.patch b/hardware/disk/disktype/files/vfat.patch new file mode 100644 index 00000000..99de689a --- /dev/null +++ b/hardware/disk/disktype/files/vfat.patch @@ -0,0 +1,19 @@ +diff -Nur disktype-9-old/dos.c disktype-9/dos.c +--- disktype-9-old/dos.c 2008-07-04 11:06:22.000000000 +0300 ++++ disktype-9/dos.c 2008-07-04 11:22:59.000000000 +0300 +@@ -485,6 +485,7 @@ + strcpy(s, ", ATARI ST bootable"); + print_line(level, "%s file system (hints score %d of %d%s)", + fatnames[fattype], score, 5, s); ++ print_line(level, "KERNELMODULE: vfat"); + + if (sectsize > 512) + print_line(level + 1, "Unusual sector size %lu bytes", sectsize); +@@ -551,6 +552,7 @@ + + /* tell the user */ + print_line(level, "NTFS file system"); ++ print_line(level, "KERNELMODULE: ntfs"); + + format_blocky_size(s, sectcount, sectsize, "sectors", NULL); + print_line(level + 1, "Volume size %s", s); diff --git a/hardware/disk/disktype/pspec.xml b/hardware/disk/disktype/pspec.xml new file mode 100644 index 00000000..d7f27b75 --- /dev/null +++ b/hardware/disk/disktype/pspec.xml @@ -0,0 +1,60 @@ + + + + + + disktype + http://disktype.sourceforge.net/ + + PisiLinux Community + admins@pisilinux.org + + BSD + app:console + Detect the content format of a disk or disk image + The purpose of disktype is to detect the content format of a disk or disk image. It knows about common file systems, partition tables, and boot codes.The program is written in C and is designed to compile on any modern Unix flavour. + mirrors://sourceforge/disktype/disktype-9.tar.gz + + disktype.patch + vfat.patch + ext4.patch + + + klibc + colorgcc + + + + + disktype + + /usr/bin + /usr/share/doc + /usr/share/man + + + + + + 2015-04-01 + 9 + Release bump. + Marcin Bojara + marcin@pisilinux.org + + + 2013-10-29 + 9 + Rebuild + Yusuf Aydemir + yusuf.aydemir@pisilinux.org + + + 2012-08-23 + 9 + First release + PisiLinux Community + admins@pisilinux.org + + + diff --git a/hardware/disk/disktype/translations.xml b/hardware/disk/disktype/translations.xml new file mode 100644 index 00000000..2ed94bec --- /dev/null +++ b/hardware/disk/disktype/translations.xml @@ -0,0 +1,8 @@ + + + + disktype + Disk veya disk görüntüsünün biçimsel içeriğini saptar + Disktype'ın amacı disk veya disk görüntüsünün içerik yapısını denetlemektir. Yaygın dosya sistemlerini, bölümleme tablolarını ve önyükleme kodlarını bilir. C dilinde yazılmış, herhangi bir modern Unix derleme tadında tasarlanmıştır. + + diff --git a/kernel/tools/component.xml b/kernel/tools/component.xml new file mode 100644 index 00000000..eb141521 --- /dev/null +++ b/kernel/tools/component.xml @@ -0,0 +1,3 @@ + + kernel.tools + diff --git a/kernel/tools/mkinitramfs/actions.py b/kernel/tools/mkinitramfs/actions.py new file mode 100644 index 00000000..7223540b --- /dev/null +++ b/kernel/tools/mkinitramfs/actions.py @@ -0,0 +1,19 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import pisitools +from pisi.actionsapi import shelltools + + +WorkDir = "./" + +def setup(): + shelltools.move("README.mkinitramfs", "README") + +def install(): + pisitools.dodir("/etc/initramfs.d") + pisitools.dodoc("README") + diff --git a/kernel/tools/mkinitramfs/comar/pakhandler.py b/kernel/tools/mkinitramfs/comar/pakhandler.py new file mode 100644 index 00000000..39a202f9 --- /dev/null +++ b/kernel/tools/mkinitramfs/comar/pakhandler.py @@ -0,0 +1,24 @@ +# -*- coding: utf-8 -*- + +import os +import piksemel +import subprocess + +def generate_initramfs(filepath): + patterns = ("lib/initramfs", "boot/kernel", "bin/busybox") + doc = piksemel.parse(filepath) + for item in doc.tags("File"): + path = item.getTagData("Path") + if path.startswith(patterns): + for kernel in os.listdir("/etc/kernel"): + subprocess.call(["/sbin/mkinitramfs", "--type", kernel]) + return + +def setupPackage(metapath, filepath): + generate_initramfs(filepath) + +def cleanupPackage(metapath, filepath): + pass + +def postCleanupPackage(metapath, filepath): + generate_initramfs(filepath) diff --git a/kernel/tools/mkinitramfs/files/hotplug b/kernel/tools/mkinitramfs/files/hotplug new file mode 100644 index 00000000..6168aec4 --- /dev/null +++ b/kernel/tools/mkinitramfs/files/hotplug @@ -0,0 +1,14 @@ +#!/bin/sh +# +# Simple script to handle uevents +# + +if [ "$SUBSYSTEM/$ACTION" == "firmware/add" ]; then + [ -e "/sys$DEVPATH/loading" ] || exit 1 + DIR=/lib/firmware + [ -e "$DIR/$FIRMWARE" ] || exit 1 + echo 1 > /sys$DEVPATH/loading + cat "$DIR/$FIRMWARE" > /sys$DEVPATH/data + echo 0 > /sys$DEVPATH/loading + exit 0 +fi diff --git a/kernel/tools/mkinitramfs/files/init b/kernel/tools/mkinitramfs/files/init new file mode 100644 index 00000000..8345cde5 --- /dev/null +++ b/kernel/tools/mkinitramfs/files/init @@ -0,0 +1,593 @@ +#!/bin/sh +# +# Simple init script that should handle both +# livecd/livedisk, thinclient and hdd boot +# + +PATH=/usr/sbin:/usr/bin:/sbin:/bin +INITRAMFSCONF="/etc/initramfs.conf" + +ROOT_LINKS="bin sbin lib boot usr opt" +ROOT_TREES="etc root home var run" +TMPFS_DIRS="dev mnt mnt/cdrom mnt/livecd mnt/thin tmp sys proc media" +LOOPBACKFILE="/boot/pisi.sqfs" + +NORESUME=0 +LIVE=0 +NFSROOT=0 +QUIET=0 +RAID_INCREMENTAL=1 +RAID=0 +LVM=0 +COPYTORAM=0 +SPLASH=0 +WIPEMEM=0 + +HOTPLUG="/sbin/hotplug" + +MNTDIR="" +FS_TYPE="" +INITRAMFS="" +ROOT_FLAGS="" +ROOT_DEVICE="" +ROOT_TARGET="" +RESUME_DEVICE="" +WIPEMEM_OPTS="-llv" + +########################### +# Miscellaneous functions # +########################### + +info() { + echo "<6>initramfs: $1" > /dev/kmsg +} + +log_output() { + $@ | echo "<6>`sed 's#^\(.*\)$#initramfs:\1#g'`" > /dev/kmsg +} + +fall2sh() { + # Kill any possible plymouth instances + test -x /bin/plymouth && /bin/plymouth quit &> /dev/null + kill -9 $(pidof plymouthd) &> /dev/null + + echo "--> $*" + echo "Reboot with initramfs=shell(noprobe) to further debug the issue." + + # Use a login shell for sourcing /etc/profile + /bin/sh -l +} + +run_dhcpc() { + udhcpc -C -i eth0 -s /etc/udhcpc.script +} + +################## +# Device probers # +################## + +probe_devices() { + # Set hotplug helper for firmware loading + echo $HOTPLUG > /proc/sys/kernel/hotplug + + if [ "x$1" = "x--with-kms" ]; then + probe_kms + test -x /bin/plymouth && /bin/plymouth show-splash + fi + + probe_pci_devices + probe_virtio_devices + probe_usb_devices + + # Unset hotplug helper + echo > /proc/sys/kernel/hotplug + + [ "${RAID}" -eq "1" ] && probe_raid + [ "${LVM}" -eq "1" ] && probe_lvm +} + +probe_kms() { + for device in /sys/bus/pci/devices/*/boot_vga; do + [ -f $device ] || continue + info "Loading KMS driver" + grep -q 1 $device && modprobe -bq `cat ${device%boot_vga}modalias` + done + if [ ! -c /dev/fb0 ]; then + echo "options uvesafb scroll=ywrap mtrr=0 nocrtc=1 mode_option=1024x768-32" > /etc/modprobe.d/uvesafb.conf + modprobe -bq uvesafb + fi +} + +probe_pci_devices() { + info "Probing PCI devices" + local MODULES="" + for module in /sys/bus/pci/devices/*/modalias; do + [ -f $module ] || continue + MODULES="$MODULES $(cat $module)" + done + modprobe -bqa $MODULES +} + +probe_usb_devices() { + info "Probing USB devices" + local MODULES="" + for module in /sys/bus/usb/devices/*/modalias; do + [ -f $module ] || continue + MODULES="$MODULES $(cat $module)" + done + modprobe -bqa $MODULES +} + +probe_raid() { + info "Probing RAID devices" + modprobe -bqa dm-mod raid0 raid1 raid10 raid456 + if [ -x /sbin/mdadm ] + then + /sbin/mdadm --examine --scan > /etc/mdadm.conf + /sbin/mdadm -As + fi +} + +probe_lvm() { + info "Probing LVM devices" + modprobe -qa dm-mod + if [ -x /sbin/lvm ] + then + /sbin/lvm vgscan --ignorelockingfailure &> /dev/null + /sbin/lvm vgchange -ay --sysinit --ignorelockingfailure &> /dev/null + /sbin/lvm vgmknodes --ignorelockingfailure &> /dev/null + fi +} +probe_virtio_devices() { + local MODULES="" + for module in /sys/bus/virtio/devices/*/modalias; do + [ -f $module ] || continue + MODULES="$MODULES $(cat $module)" + done + modprobe -bqa $MODULES +} + +################################# +# Filesystem specific functions # +################################# + +mount_rootfs() { + FS_TYPE=`disktype $ROOT_DEVICE | grep KERNELMODULE | awk '{print $2}'` + info "Mounting rootfs: $ROOT_DEVICE ($FS_TYPE)" + mount -r -t $FS_TYPE -n ${ROOT_FLAGS} ${ROOT_DEVICE} /newroot +} + +find_live_mount() { + if [ "$#" -gt "0" ] + then + for x in $* + do + # this is used for non Linux fs detection + FS_TYPE=`disktype $1 | grep KERNELMODULE | awk '{print $2}'` + if [ -n "$FS_TYPE" -a -f /lib/modules/*/$FS_TYPE.ko ] + then + modprobe $FS_TYPE 1> /dev/null 2>&1 + fi + + mount -r ${x} /newroot/mnt/cdrom > /dev/null 2>&1 + + if [ "$?" = "0" ] + then + # Check for cdroot image + if [ -e /newroot/mnt/cdrom/${LOOPBACKFILE} ] + then + ROOT_DEVICE="/newroot${x}" + if [ "$COPYTORAM" == "1" ] + then + info "Copying Live Media files to RAM" + mkdir /newroot/mnt/cdromtemp + cp -af /newroot/mnt/cdrom/* /newroot/mnt/cdromtemp/ + umount /newroot/mnt/cdrom + rmdir /newroot/mnt/cdrom + mv /newroot/mnt/cdromtemp /newroot/mnt/cdrom + fi + break + else + umount /newroot/mnt/cdrom + fi + fi + done + fi +} + +manage_tmpfs() { + mount -t tmpfs tmpfs /newroot + + for d in ${TMPFS_DIRS}; do + mkdir -p "/newroot/${d}" + done +} + +mount_nfs() { + FS_LOCATION='mnt/thin' + + # Change directory to /newroot + cd /newroot + + # FIXME: busybox mount does not load automatically + modprobe -q nfs + + # mount nfs + if [ -z "/etc/udhcpc.info" ] + then + fall2sh "/etc/udhcpc.info not found" + fi + + . /etc/udhcpc.info + + if [ -z "${ROOTPATH}" ] + then + fall2sh "NFS rootpath not found" + fi + + echo "Mounting NFS from $ROOTPATH" + mount -o tcp,nolock,ro $ROOTPATH /newroot/mnt/thin + + if [ "$?" != '0' ] + then + fall2sh "Could not nfs root" + fi + + # Create necessary links + for x in ${ROOT_LINKS}; do + ln -s "${FS_LOCATION}/${x}" "${x}" + done + + if [ -e "${FS_LOCATION}/lib32" ] + then + ln -s "${FS_LOCATION}/lib32" "lib32" + fi + + # We need this for x86_64 + ln -s "${FS_LOCATION}/lib" "lib64" + + chmod 1777 tmp + (cd /newroot/${FS_LOCATION}; cp -a ${ROOT_TREES} /newroot) + + # Needed for ltspfs mechanism + echo "$IP $HOSTNAME" >> /newroot/etc/hosts +} + +mount_cdroot() { + FS_LOCATION="mnt/livecd" + + # Change directory to /newroot + cd /newroot + + # These are not loaded automatically + modprobe -q squashfs + + # Loop type squashfs + mount -t squashfs -o loop,ro /newroot/mnt/cdrom/${LOOPBACKFILE} /newroot/mnt/livecd + + if [ "$?" != "0" ] + then + fall2sh "Could not mount root image" + fi + + # Create necessary links + for x in ${ROOT_LINKS}; do + ln -s "${FS_LOCATION}/${x}" "${x}" + done + + if [ -e "${FS_LOCATION}/lib32" ] + then + ln -s "${FS_LOCATION}/lib32" "lib32" + fi + + # We need this for x86_64 + ln -s "${FS_LOCATION}/lib" "lib64" + + chmod 1777 tmp + (cd /newroot/${FS_LOCATION}; cp -a ${ROOT_TREES} /newroot) + + # FIXME: the device list is taken from udev, we can't rely on sys entries since pluggable means different + # in kernel world. Suggestions that do not include this kind of regexp mania are welcome + + # for userspace applications + REAL_ROOT_TYPE=`echo "${ROOT_DEVICE}" | sed -e 's/^\/newroot\/dev\///' | grep -qE '^sr[0-9]*|^hd[a-z]|^pcd[0-9]|^xvd*' && echo "optical" || echo "harddisk"` + echo "${REAL_ROOT_TYPE}" > /newroot/run/pisilinux/livemedia + + # this is needed for yali + MNTDIR=`grep \/mnt\/cdrom\ /proc/mounts|sed 's/\/newroot//g'` + echo "$MNTDIR" >> /newroot/etc/fstab +} + +############################## +# Config and cmdline parsers # +############################## + +# FIXME: maybe we should just source the file instead of parsing +# also consider merging conf parser and cmdline parser +parse_config() { + while read inputline; + do + case "${inputline}" in + raid=*) + RAID=$(echo $inputline|cut -f2- -d=) + ;; + lvm=*) + LVM=$(echo $inputline|cut -f2- -d=) + ;; + thin=*) + NFSROOT=$(echo $inputline|cut -f2- -d=) + ;; + root=*) + ROOT_TARGET=$(echo $inputline|cut -f2- -d=) + ;; + rootflags=*) + ROOT_FLAGS=$(echo $inputline|cut -f2- -d=) + ;; + liveroot=*) + # Installation or livecd, enable RAID by default + # to be able to read existing RAID installations + LIVE=1 + RAID_INCREMENTAL=0 + LIVEROOT=$(echo $inputline|cut -f2- -d=) + ;; + resume=*) + RESUME_DEVICE="${inputline#resume=}" + ;; + noresume) + NORESUME=1 + ;; + copytoram) + COPYTORAM=1 + ;; + wipemem) + WIPEMEM=1 + ;; + wipememopts=*) + WIPEMEM=1 + WIPEMEM_OPTS=$(echo $inputline|cut -f2- -d=) + ;; + splash) + SPLASH=1 + ;; + init=*) + INIT="${inputline#INIT=}" + ;; + esac + done < $INITRAMFSCONF +} + +parse_cmdline() { + for x in `cat /proc/cmdline`; do + case "${x}" in + [0123456Ss]) + # Normalize 'S' to 's' + LEVEL=`echo ${x}|tr A-Z a-z` + ;; + mudur=*) + for m in `echo ${x}|cut -f2 -d=|sed 's/,/ /g'`; do + case "${m}" in + livecd) + LIVE=1 + ;; + livedisk) + LIVE=1 + ;; + raid) + RAID=1 + ;; + lvm) + LVM=1 + ;; + thin) + NFSROOT=1 + ;; + esac + done + ;; + initramfs=*) + INITRAMFS=`echo ${x}|cut -f2- -d=` + ;; + root=*) + ROOT_TARGET=`echo ${x}|cut -f2- -d=` + ;; + rootflags=*) + ROOT_FLAGS="-o ${x#rootflags=}" + ;; + liveroot=*) + LIVE=1 + LIVEROOT=$(echo ${x}|cut -f2- -d=) + ;; + resume=*) + RESUME_DEVICE="${x#resume=}" + ;; + noresume) + NORESUME=1 + ;; + init=*) + INIT="${x#init=}" + ;; + copytoram) + COPYTORAM=1 + ;; + wipemem) + WIPEMEM=1 + ;; + wipememopts=*) + WIPEMEM=1 + WIPEMEM_OPTS=$(echo $x|cut -f2- -d=) + ;; + splash) + SPLASH=1 + ;; + single) + LEVEL="s" + ;; + quiet) + QUIET=1 + ;; + blacklist=*) + modules=${x#blacklist=} + for module in ${modules//,/ }; do + echo "blacklist $module" >> /etc/modprobe.d/cmdline.conf + done + ;; + esac + done + + if [ -f /etc/modprobe.d/cmdline.conf ]; then + cp /etc/modprobe.d/cmdline.conf /dev/.modprobe.initramfs.conf + fi +} + + +#################### +# init starts here # +#################### + +info "Starting init on initramfs" + +# Mount needed filesystems +mount -n -t proc proc /proc +mount -n -t sysfs sysfs /sys +# Added to start udev properly +#mkdir -m 0755 /run +#mount -t tmpfs tmpfs /run + +# Prepare /dev (Needs kernel >= 2.6.32) +mount -t devtmpfs devtmpfs /dev +mkdir -m 0755 /dev/pts +mount -t devpts -o gid=5,mode=620 devpts /dev/pts + +# First parse config file, then cmdline to allow overwriting internal config +if [ -f "$INITRAMFSCONF" ] +then + #. $INITRAMFSCONF + parse_config +fi + +# Parse command line parameters +parse_cmdline + +# Minimize printk log +test "x$QUIET" = "x1" && echo "1" > /proc/sys/kernel/printk + +# Initialize plymouth daemon if found and splash is true +# Don't even launch plymouthd if we're in single-user mode +if [ "$LEVEL" != "s" -a "$SPLASH" = "1" -a -x /sbin/plymouthd ]; then + /sbin/plymouthd --attach-to-session +fi + +# Handle initramfs= parameter +if [ "${INITRAMFS}" == "shellnoprobe" ] +then + fall2sh "Starting up a shell without probing" +elif [ "${INITRAMFS}" == "shell" ] +then + probe_devices --with-kms + fall2sh "Starting up a shell" +fi + +if [ "${WIPEMEM}" = "1" ] +then + info "Wiping out memory, system will be shutdown after completion" + sdmem ${WIPEMEM_OPTS} + poweroff -f +fi + +# Probe devices +probe_devices --with-kms + +if [ -x /usr/sbin/resume -a -b "$RESUME_DEVICE" -a "x$NORESUME" != "x1" ] +then + if [ "x$SPLASH" == "x1" ] + then + SPLASHPARAM="-P splash=y" + else + SPLASHPARAM="-P splash=n" + fi + # FIXME: This will fail if resume= contains LABEL/UUID + info "Attempting to resume from hibernation" + /usr/sbin/resume $SPLASHPARAM $RESUME_DEVICE +fi + +echo 0x0100 > /proc/sys/kernel/real-root-dev + +if [ "${LIVE}" -eq "1" ] +then + ROOT_DEVICE="" + manage_tmpfs + + # modprobe filesystems that are not in kernel, for live disks + modprobe -qa nls_cp857 nls_utf8 vfat + + for i in `seq 50` + do + t=`findfs ${LIVEROOT} 2>/dev/null` + find_live_mount "$t" + + if [ "${ROOT_DEVICE}" != "" ] + then + break + else + probe_devices + usleep 200000 + fi + done + + if [ "${ROOT_DEVICE}" == "" ] + then + fall2sh "Could not find mount media" + fi + + mount_cdroot + +elif [ "${NFSROOT}" -eq "1" ] +then + run_dhcpc + manage_tmpfs + mount_nfs + + # set hostname for mudur + hostname $HOSTNAME + +else + # Wait until ROOT_DEVICE appears + for i in `seq 50` + do + # let findfs handle all conversion + ROOT_DEVICE=`findfs ${ROOT_TARGET} 2>/dev/null` + + if [ ! -b "${ROOT_DEVICE}" ] + then + probe_devices + usleep 200000 + else + break + fi + done + if [ ! -b "${ROOT_DEVICE}" ] + then + fall2sh "Could not find boot device" + else + mount_rootfs + fi +fi + +[ "${INIT}" == "" ] && INIT="/sbin/init"; + +# This stops /lib/udev/rules.d/65-md-incremental.rules from medling with mdraid sets. +[ "${RAID_INCREMENTAL}" -eq "0" ] && touch /dev/.in_sysinit + +# Move mounts instead of umount/mount +mount --move /dev /newroot/dev +mount --move /proc /newroot/proc +mount --move /sys /newroot/sys +# Added to start udev properly +#mount --move /run /newroot/run + + +# And we start +info "Switching to the real root" +test -x /bin/plymouth && /bin/plymouth update-root-fs --new-root-dir=/newroot +exec /bin/switch_root -c /dev/console /newroot ${INIT} ${LEVEL} + diff --git a/kernel/tools/mkinitramfs/files/initramfs.conf b/kernel/tools/mkinitramfs/files/initramfs.conf new file mode 100644 index 00000000..5c9df8f9 --- /dev/null +++ b/kernel/tools/mkinitramfs/files/initramfs.conf @@ -0,0 +1,29 @@ +# +# this file is used to configure initramfs, lowercase is preferred +# + +# Set to 1 to enable probing raid modules and +# calling /sbin/mdadm if it exists +# raid=1 + +# Set to 1 to enable probing lvm modules and +# calling /sbin/lvm if it exists +# lvm=1 + +# Set to 1 to mount rootfs over NFS +# thin=0 + +# Set root device +# root=LABEL=MyPisiLinuxSystem + +# Set rootfs's mount flags +# rootflags=acl,xattr + +# Set resume partition +# resume=/dev/sdb5 + +# Set to 1 to disable resuming +# noresume=0 + +# Set Live media label +# liveroot=LABEL=PisiLiveImage diff --git a/kernel/tools/mkinitramfs/files/mkinitramfs b/kernel/tools/mkinitramfs/files/mkinitramfs new file mode 100644 index 00000000..adc54211 --- /dev/null +++ b/kernel/tools/mkinitramfs/files/mkinitramfs @@ -0,0 +1,586 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# PisiLinux initramfs creator +# + +import os +import sys +import glob +import stat +import shutil +import tempfile +import subprocess + +from optparse import OptionParser + +config = {"rootDir" : "/", + "tmpDir" : "", + "debug" : False, + "dryrun" : False, + "destDir" : "/boot", + "blackList" : ["pktcdvd", "floppy"], + "kernelType" : "kernel", + "initramfsConf" : "/etc/initramfs.conf", + "kernelVersion" : "", +} + +def loadFile(_file): + try: + f = file(_file) + d = [a.lstrip().rstrip("\n") for a in f] + d = filter(lambda x: not (x.startswith("#") or x == ""), d) + f.close() + return d + except: + return [] + +def writeFile(_file, data): + f = open(_file, "w") + f.write(data) + f.close() + +def mkdir(_dir): + os.makedirs(_dir) + +def dohardlink(destination, source): + os.link(destination, source) + +def dosymlink(destination, source): + os.symlink(destination, source) + +def mknod(nodfile, nodtype, major, minor, perms=0666): + # c for character b for block devices, mknod style + if nodtype == "c": + devtype = stat.S_IFCHR + else: + devtype = stat.S_IFBLK + + os.mknod(nodfile, perms | devtype, os.makedev(major, minor)) + +def copy(source, destination): + # First let's check for the target directory and create if + # it doesn't exist + destdir = os.path.dirname(destination) + if not os.path.isdir(destdir): + mkdir(destdir) + + try: + shutil.copy2(source, destination) + except IOError: + printWarn("Could not find %s" % source) + +def touch(_file): + if os.path.exists(_file): + os.utime(_file, None) + else: + f = open(_file, 'w') + f.close() + +def capture(*cmd): + a = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + return a.communicate() + +def run(*cmd): + f = file("/dev/null", "w") + return subprocess.call(cmd, shell=True, stdout=f, stderr=f) + +def printFail(msg): + print "ERROR: %s" % msg + + tempdir.cleanup() + sys.exit(1) + +def printWarn(msg): + print "WARNING: %s" % msg + +def setKernelVersion(Version=""): + if Version == "": + kver = "".join(loadFile("/etc/kernel/%s" % config["kernelType"])) + else: + kver = Version + + # FIXME: we should do this an option and in a try/except + if kver == "": + print "could not find version of %s, autodetecting" % config["kernelType"] + kver = os.uname()[2] + + config["kernelVersion"] = kver + +class BaseSystem: + def __init__(self): + self.kver = config["kernelVersion"] + self.tmpDir = config["tmpDir"] + self.baseDirs = ["bin", "sbin", "etc/initramfs.d", "dev", "dev/loop", "lib", "newroot", "proc", "sys"] + + self.deviceNodes = {"null" : ["c", 1, 3], + "console" : ["c", 5, 1], + "tty" : ["c", 5, 0], + "tty0" : ["c", 4, 0], + "tty1" : ["c", 4, 1], + "ram0" : ["b", 1, 0], + "fb0" : ["c", 29, 0], + "urandom" : ["c", 1, 9], + "kmsg" : ["c", 1, 11], + } + + self.baseFileList = { + "/bin/busybox" : "/bin/", + "/bin/busybox.links" : "/bin/", + "/usr/bin/disktype" : "/bin/", + "/usr/bin/sdmem" : "/bin/", + "/lib/initramfs/init" : "/", + "/lib/initramfs/hotplug" : "/sbin/", + "/lib/initramfs/udhcpc.script" : "/etc/", + "/lib/initramfs/profile.rc" : "/etc/profile", + } + + self.modprobeBlacklistFileList = dict([(k,"/etc/modprobe.d") for k in glob.glob("/etc/modprobe.d/blacklist*conf")]) + + self.suspendFileList = { + "/etc/suspend.conf" : "/etc/", + "/usr/sbin/resume" : "/bin/", + } + + + def getNewRoot(self, dir): + cleandir = dir.lstrip("/") + return os.path.join(self.tmpDir, cleandir) + + def createBaseDirectories(self): + for i in self.baseDirs: + mkdir(self.getNewRoot(i)) + + mkdir(self.getNewRoot("/lib/modules/%s" % self.kver)) + mkdir(self.getNewRoot("/lib/firmware")) + mkdir(self.getNewRoot("/etc/modprobe.d")) + + def copyBasefiles(self): + for i in self.baseFileList: + copy(i, self.getNewRoot(self.baseFileList[i])) + + for i in ["/init", "/etc/udhcpc.script"]: + os.chmod(self.getNewRoot(i), 0755) + + for i in ["ext2", "ext3", "ext4", "reiserfs", "xfs"]: + touch(self.getNewRoot("/bin/fsck.%s" % i)) + + writeFile(self.getNewRoot("/etc/fstab"), "none none none defaults 0 0") + + def createConfig(self): + # FIXME: Parse config files and create a proper one by hand + configFileSource = config["initramfsConf"] + if os.path.exists(configFileSource): + copy(configFileSource, self.getNewRoot(configFileSource)) + + def createNodes(self): + for i in self.deviceNodes: + k = self.deviceNodes[i] + mknod(self.getNewRoot("dev/%s" % i), k[0], k[1], k[2]) + + for i in range(8): + mknod(self.getNewRoot("dev/loop/%i" % i), "b", 7, i) + dosymlink("loop/%i" % i, self.getNewRoot("dev/loop%i" % i)) + + def createBaseSymlinks(self): + for i in loadFile(self.getNewRoot("/bin/busybox.links")): + # FIXME: python dosym does not play nice with cpio, it creates 120MB initramfs + # dosymlink("busybox", self.getNewRoot("/bin/%s" % i.split("/")[-1])) + dohardlink(self.getNewRoot("/bin/busybox"), self.getNewRoot("/bin/%s" % i.split("/")[-1])) + + # FIXME: maybe we should symlink sbin to bin + dohardlink(self.getNewRoot("/bin/busybox"), self.getNewRoot("/sbin/modprobe")) + + def addRaid(self): + mdadmFile = "/sbin/mdadm.static" + if os.path.exists(mdadmFile): + copy(mdadmFile, self.getNewRoot(mdadmFile.replace(".static", ""))) + + def addLvm(self): + lvmFile = "/sbin/lvm.static" + if os.path.exists(lvmFile): + copy(lvmFile, self.getNewRoot(lvmFile.replace(".static", ""))) + + def addSuspend(self): + for i in self.suspendFileList: + copy(i, self.getNewRoot(self.suspendFileList[i])) + + def addModprobeBlacklists(self): + for i in self.modprobeBlacklistFileList: + copy(i, self.getNewRoot(self.modprobeBlacklistFileList[i])) + + def create(self): + self.createBaseDirectories() + self.copyBasefiles() + self.createNodes() + self.createBaseSymlinks() + self.createConfig() + self.addRaid() + self.addLvm() + self.addSuspend() + self.addModprobeBlacklists() + +class KernelModule: + def __init__(self): + self.modulesList = [] + self.allModules = [] + self.blackList = config["blackList"] + self.kernelVersion = config["kernelVersion"] + + self.targetDir = config["tmpDir"] + self.rootDir = config["rootDir"] + self.modulesDir = os.path.join(self.rootDir, "lib/modules/%s" % self.kernelVersion) + self.firmwareDir = os.path.join(self.rootDir, "lib/firmware") + + self.addNetworkModule = config["networkModule"] + self.addNetworkModuleBasic = config["networkModuleBasic"] + + self.addDRMModules = not config["excludeDRM"] + self.findAllModules() + + self.scsiDirs = ["kernel/drivers/scsi"] + self.scsiModules = ["mptfc", "mptsas", "mptscsih", "mptspi", "zfcp"] + + self.mdDirs = ["kernel/drivers/md"] + self.ataDirs = ["kernel/drivers/ata"] + self.mmcDirs = ["kernel/drivers/mmc"] + self.ideDirs = ["kernel/drivers/ide"] + self.blockDirs = ["kernel/drivers/block"] + + self.firewireModules = ["firewire-ohci", "firewire-sbp2", "firewire-net", "firewire-core"] + self.i2oModules = ["i2o_block"] + self.usbModules = ["usb-storage", "sd_mod", "usbcore", "ehci-hcd", "ohci-hcd", "uhci-hcd"] + + self.filesystemModules = ["ext2", "ext3", "ext4", "reiser4", "jfs", "reiserfs", "xfs", "vfat", "fat", "ntfs", "unionfs", "cramfs", "nfs", "nls_utf8", "nls_iso8859_9", "nls_cp857", "nls_iso8859-1", "nls_ascii", "nls_cp850", "squashfs"] + + self.networkBaseModules = ["af_packet", "mii", "8390", "via-rhine", "8139too", "ne2k-pci", "e100", "sky2", "tg3", "skge"] + self.networkDirs = ["kernel/drivers/net"] + + self.drmDir = "kernel/drivers/gpu/drm" + + self.virtioModules = ["virtio", "virtio_balloon", "virtio_blk", "virtio_net", "virtio_pci"] + self.xenModules = ["xenblk", "xenfb", "gntdev", "xennet", "xenkbd"] + + + def tidyModuleList(self): + ml = list(set(self.modulesList)) + ml.sort() + self.modulesList = ml + + def depmod(self, targetdir): + cmd = "/sbin/depmod -a -b %s -F %s/System.map %s" + capture(cmd % (targetdir, self.modulesDir, self.kernelVersion)) + + def installModules(self): + for i in self.modulesList: + if os.path.basename(i).replace(".ko", "") not in self.blackList: + copy(i, os.path.join(self.targetDir, self.modulesDir.replace(self.rootDir, "/").lstrip("/"))) + + def findAllModules(self): + foundModules = [] + + if not os.path.exists(self.modulesDir): + printFail("There is no %s, please check your kernel version" % self.modulesDir) + + for root, directory, files in os.walk(self.modulesDir): + for name in files: + if name.endswith(".ko"): + foundModules.append(os.path.join(root, name)) + + self.allModules = foundModules + + def findModuleDeps(self): + deps = [] + depdata = loadFile(os.path.join(self.modulesDir, "modules.dep")) + + for line in depdata: + for i in self.modulesList: + if "%s:" % i.replace("%s/" % self.modulesDir, "") in line: + deps.extend(line.split(":")[1].strip().split(" ")) + + # return [os.path.join(self.modulesDir, x) for x in deps if not x == ""] + self.modulesList.extend([os.path.join(self.modulesDir, x) for x in deps if not x == ""]) + + def appendFirmwares(self): + ret = capture("/sbin/modinfo -F firmware %s/*.ko" % os.path.join(self.targetDir, self.modulesDir.replace(self.rootDir, "/").lstrip("/")))[0] + fwlist = ret.strip("\n").split("\n") + + targetbase = os.path.join(self.targetDir, "lib/firmware") + + for i in fwlist: + src = os.path.join(self.firmwareDir, i) + target = os.path.join(targetbase, os.path.dirname(i)) + + if os.path.exists(src): + if not os.path.exists(target): + mkdir(target) + + copy(src, target) + + else: + printWarn("Could not find firmware %s" % src) + pass + + def updateModuleDependencies(self, force=False): + # this is here to prevent a race condition with pakhandler, when installing a system from scratch + if force or not os.path.exists("%s/modules.dep" % self.modulesDir): + printWarn("Could not find module dependencies in %s, running depmod for system" % self.modulesDir) + self.depmod(self.rootDir) + + def addDir(self, mdir): + newModules = [] + dirtoadd = os.path.join(self.modulesDir, mdir) + + for line in self.allModules: + if line.startswith(dirtoadd): + newModules.append(line) + + self.modulesList.extend(newModules) + + def addModule(self, module): + if module.endswith(".ko"): + module = module[:-3] + + for line in self.allModules: + # FIXME: I still don't trust the _ versus - case, try to be sure of it in kernel + if line.replace("-", "_").endswith("/%s.ko" % module.replace("-", "_")): + self.modulesList.append(line) + return + + def addScsi(self): + for i in self.scsiDirs: + self.addDir(i) + + for i in self.scsiModules: + self.addModule(i) + + def addAta(self): + for i in self.ataDirs: + self.addDir(i) + + def addMmc(self): + for i in self.mmcDirs: + self.addDir(i) + + def addBlock(self): + for i in self.blockDirs: + self.addDir(i) + + def addIde(self): + for i in self.ideDirs: + self.addDir(i) + + def addNetwork(self): + if self.addNetworkModule: + for i in self.networkDirs: + self.addDir(i) + + if self.addNetworkModuleBasic: + for i in self.networkBaseModules: + self.addModule(i) + + def addDRM(self): + if self.addDRMModules: + for i in glob.glob("%s/*/*.ko" % os.path.join(self.modulesDir, self.drmDir)): + # Check for drm_crtc_init symbol + if not os.system("grep -qw drm_crtc_init %s" % i): + self.addModule(i.partition(self.modulesDir+'/')[-1]) + + # Add uvesafb as a fallback + if os.path.exists("/sbin/v86d"): + copy("/sbin/v86d", os.path.join(self.targetDir, "sbin/")) + self.addModule("kernel/drivers/video/uvesafb.ko") + + def addMd(self): + for i in self.mdDirs: + self.addDir(i) + + def addFirewire(self): + for i in self.firewireModules: + self.addModule(i) + + def addI2o(self): + for i in self.i2oModules: + self.addModule(i) + + def addUsb(self): + for i in self.usbModules: + self.addModule(i) + + def addFilesystem(self): + for i in self.filesystemModules: + self.addModule(i) + + def addVirtio(self): + for i in self.virtioModules: + self.addModule(i) + + def addXen(self): + for i in self.xenModules: + self.addModule(i) + + def addGeneric(self): + self.addScsi() + self.addAta() + self.addMmc() + self.addBlock() + self.addIde() + self.addNetwork() + self.addMd() + self.addFirewire() + self.addI2o() + self.addUsb() + self.addFilesystem() + self.addVirtio() + self.addDRM() + + def autoGenerate(self): + self.updateModuleDependencies() + self.addGeneric() + self.findModuleDeps() + self.tidyModuleList() + self.installModules() + self.appendFirmwares() + self.depmod(self.targetDir) + +class Plymouth: + def __init__(self): + self.fileList = "/lib/initramfs/plymouth.list" + self.targetDir = config["tmpDir"] + self.theme = "pisilinux" + self.themeDir = "/usr/share/plymouth/themes" + + def install_current_theme(self): + self.theme = os.popen("plymouth-set-default-theme").read().strip() + if os.path.exists("%s/%s" % (self.themeDir, self.theme)): + for themeFile in glob.glob("%s/%s/*" % (self.themeDir, self.theme)): + copy(themeFile, os.path.join(self.targetDir, themeFile[1:])) + + def install(self): + """Will install plymouth related base stuff.""" + if os.path.exists(self.fileList): + with open(self.fileList, "r") as files: + for _file in files: + filename = _file.strip() + copy(filename.strip(), os.path.join(self.targetDir, filename[1:])) + + self.install_current_theme() + +class Initramfs: + def __init__(self): + self.destDir = config["destDir"] + self.sourceDir = config["tmpDir"] + self.initramfs = "initramfs-%s" % config["kernelVersion"] + + def create(self): + if not os.path.exists(self.destDir): + mkdir(self.destDir) + + cmd = "(cd %s && find . | cpio --quiet --dereference -o -H newc | gzip -6 > %s)" + capture(cmd % (self.sourceDir, os.path.join(self.destDir, self.initramfs))) + +class Tempdir: + def __init__(self): + self.tmpDir = "" + self.keepTmp = False + + def create(self): + self.tmpDir = tempfile.mkdtemp(prefix="mkinitramfs-") + + def cleanup(self): + if self.keepTmp: + printWarn("Keeping temporary directory %s" % self.tmpDir) + else: + shutil.rmtree(self.tmpDir) + + +if __name__ == "__main__": + tempdir = Tempdir() + tempdir.create() + config["tmpDir"] = tempdir.tmpDir + + parser = OptionParser() + parser.add_option("-k", "--kernel", dest="kernelVersion", type="string", + help="kernel version to create initramfs for") + + parser.add_option("-t", "--type", dest="type", type="string", default="kernel", + help="kernel type to create initramfs for") + + parser.add_option("-o", "--output", dest="destDir", type="string", metavar="DIR", default="/boot", + help="create initramfs in DIR") + + parser.add_option("-c", "--configfile", dest="configFile", type="string", metavar="FILE", default="/etc/initramfs.conf", + help="use FILE for initramfs config file, default is /etc/initramfs.conf") + + parser.add_option("-r", "--rootdir", dest="rootDir", type="string", metavar="DIR", default="/", + help="use DIR as basedir for kernel modules") + + parser.add_option("-f", "--filename", dest="filename", type="string", metavar="FILE", + help="use FILE for initramfs file name") + + parser.add_option("-d", "--debug", action="store_true", dest="debug", default=False, + help="print extra debug info") + + parser.add_option("--blacklist", dest="blackList", type="string", metavar="FILES", default="", + help="define modules to be blacklisted, seperated by comma. Example: e100,rtl819,ahci") + + parser.add_option("--network", action="store_true", dest="networkModule", default=False, + help="add network modules") + + parser.add_option("--nodrm", action="store_true", dest="excludeDRM", default=False, + help="Don't include KMS capable DRM modules") + + parser.add_option("--network-generic", action="store_true", dest="networkModuleBasic", default=False, + help="add only generic network modules") + + parser.add_option("--keeptmp", action="store_true", dest="keepTmp", default=False, + help="whether to keep temporary dir after operation") + + parser.add_option("-n", "--dry-run", action="store_true", dest="dryrun", default=False, + help="do not perform any action, just show what will be done") + + parser.add_option("--list-modules", action="store_true", dest="listModules", default=False, + help="do not perform any action, just show what will be done") + + parser.add_option("--list-base", action="store_true", dest="listBase", default=False, + help="do not perform any action, just show what will be done") + + (opts, args) = parser.parse_args() + + config["initramfsConf"] = opts.configFile + + config["destDir"] = os.path.abspath(opts.destDir) + config["rootDir"] = os.path.abspath(opts.rootDir) + + config["debug"] = opts.debug + config["dryrun"] = opts.dryrun + tempdir.keepTmp = opts.keepTmp + + config["kernelType"] = opts.type + config["networkModule"] = opts.networkModule + config["networkModuleBasic"] = opts.networkModuleBasic + config["excludeDRM"] = opts.excludeDRM + + if "," in opts.blackList: + config["blackList"].extend(opts.blackList.split(",")) + + if opts.kernelVersion: + config["kernelVersion"] = opts.kernelVersion + else: + setKernelVersion() + + basesystem = BaseSystem() + basesystem.create() + + # Check for plymouth and install if found + plymouth = Plymouth() + plymouth.install() + + kernelmodule = KernelModule() + kernelmodule.autoGenerate() + + initramfs = Initramfs() + initramfs.create() + + tempdir.cleanup() + diff --git a/kernel/tools/mkinitramfs/files/profile.rc b/kernel/tools/mkinitramfs/files/profile.rc new file mode 100644 index 00000000..64884402 --- /dev/null +++ b/kernel/tools/mkinitramfs/files/profile.rc @@ -0,0 +1,6 @@ +# Simple profile file for sh + +alias ls='ls --color=auto' +alias ll='ls --color -l' + +export PS1="\[\033[1;31m\]initramfs \[\033[1;34m\]\W # \[\033[00m\]" diff --git a/kernel/tools/mkinitramfs/files/udhcpc.script b/kernel/tools/mkinitramfs/files/udhcpc.script new file mode 100644 index 00000000..2fcc4d0b --- /dev/null +++ b/kernel/tools/mkinitramfs/files/udhcpc.script @@ -0,0 +1,85 @@ +#!/bin/sh + +PATH=/bin:/usr/bin:/sbin:/usr/sbin + +RESOLV_CONF="/etc/resolv.conf" + +UDHCPC_INFO="/etc/udhcpc.info" + +update_interface() +{ + [ -n "$broadcast" ] && BROADCAST="broadcast $broadcast" + [ -n "$subnet" ] && NETMASK="netmask $subnet" + /bin/ifconfig $interface $ip $BROADCAST $NETMASK +} + +update_routes() +{ + if [ -n "$router" ] + then + echo "deleting routes" + while /bin/route del default gw 0.0.0.0 dev $interface > /dev/null 2>&1 + do : + done + + for i in $router + do + /bin/route add default gw $i dev $interface + done + fi +} + +update_dns() +{ + echo -n > $RESOLV_CONF + [ -n "$domain" ] && echo domain $domain >> $RESOLV_CONF + for i in $dns + do + echo adding dns $i + echo nameserver $i >> $RESOLV_CONF + done +} + +deconfig() +{ + /bin/ifconfig $interface 0.0.0.0 +} + +update_udhcpc_info() +{ + cat > $UDHCPC_INFO < + + + + mkinitramfs + http://www.busybox.net + + PisiLinux Community + admins@pisilinux.org + + GPLv2 + app:console + A tool to create the initramfs image + mkinitramfs contains a tool to create the initramfs image with busybox. + http://source.pisilinux.org/1.0/README.mkinitramfs + + + + mkinitramfs + + disktype + busybox + + + /etc + /sbin + /lib/initramfs + /usr/share/doc/mkinitramfs + + + mkinitramfs + init + udhcpc.script + hotplug + profile.rc + initramfs.conf + + + System.PackageHandler + + + + + + 2014-05-11 + 1.0.7 + Release bump. + Marcin Bojara + marcin@pisilinux.org + + + 2014-05-10 + 1.0.7 + Fix probing LVM devices + Marcin Bojara + marcin@pisilinux.org + + + 2013-09-10 + 1.0.7 + Disable mount tmpfs on /run + Marcin Bojara + marcin@pisilinux.org + + + 2013-09-05 + 1.0.7 + Add missing method to pakhandler.py + Marcin Bojara + marcin@pisilinux.org + + + 2013-09-03 + 1.0.7 + Fix default plymouth theme name. + Serdar Soytetir + kaptan@pisilinux.org + + + 2013-06-17 + 1.0.7 + Fix resume path. + Marcin Bojara + marcin@pisilinux.org + + + 2013-02-13 + 1.0.7 + Change loopbackimage address and name. + Serdar Soytetir + kaptan@pisilinux.org + + + 2013-01-13 + 1.0.7 + First release + Serdar Soytetir + kaptan@pisilinux.org + + + diff --git a/kernel/tools/mkinitramfs/translations.xml b/kernel/tools/mkinitramfs/translations.xml new file mode 100644 index 00000000..23a58871 --- /dev/null +++ b/kernel/tools/mkinitramfs/translations.xml @@ -0,0 +1,9 @@ + + + + mkinitramfs + initramfs image dosyası yaratmak için araç + initramfs image dosyası yaratmak için araç + Un outil pour créer les images initramfs + + diff --git a/office/component.xml b/office/component.xml new file mode 100644 index 00000000..4f9c1eb5 --- /dev/null +++ b/office/component.xml @@ -0,0 +1,3 @@ + + office + diff --git a/office/docbook/component.xml b/office/docbook/component.xml new file mode 100644 index 00000000..b70cd087 --- /dev/null +++ b/office/docbook/component.xml @@ -0,0 +1,3 @@ + + office.docbook + diff --git a/office/docbook/docbook-xml/actions.py b/office/docbook/docbook-xml/actions.py new file mode 100644 index 00000000..0eb21712 --- /dev/null +++ b/office/docbook/docbook-xml/actions.py @@ -0,0 +1,19 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import pisitools +from pisi.actionsapi import get + +WorkDir="." + +def install(): + for version in ["4.1.2", "4.2", "4.3", "4.4", "4.5"]: + pisitools.insinto("/usr/share/xml/docbook/xml-dtd-%s" % version, "*.dtd") + pisitools.insinto("/usr/share/xml/docbook/xml-dtd-%s" % version, "*.mod") + pisitools.insinto("/usr/share/xml/docbook/xml-dtd-%s" % version, "docbook.cat") + pisitools.insinto("/usr/share/xml/docbook/xml-dtd-%s/ent" % version, "ent/*.ent") + + pisitools.dodoc("ChangeLog", "README") diff --git a/office/docbook/docbook-xml/files/catalog b/office/docbook/docbook-xml/files/catalog new file mode 100644 index 00000000..335f17a3 --- /dev/null +++ b/office/docbook/docbook-xml/files/catalog @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/office/docbook/docbook-xml/files/docbook b/office/docbook/docbook-xml/files/docbook new file mode 100644 index 00000000..20f52153 --- /dev/null +++ b/office/docbook/docbook-xml/files/docbook @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/office/docbook/docbook-xml/pspec.xml b/office/docbook/docbook-xml/pspec.xml new file mode 100644 index 00000000..cd2fc303 --- /dev/null +++ b/office/docbook/docbook-xml/pspec.xml @@ -0,0 +1,71 @@ + + + + + docbook-xml + http://www.docbook.org/xml/ + + PisiLinux Community + admins@pisilinux.org + + LGPLv2.1 + data + Docbook XML DTD + Contains Docbook DTD for XML. A widely used XML scheme for writing documentation and help + http://www.docbook.org/xml/4.1.2/docbkx412.zip + http://www.oasis-open.org/docbook/xml/4.1/docbkx41.zip + http://www.docbook.org/xml/4.2/docbook-xml-4.2.zip + http://www.docbook.org/xml/4.3/docbook-xml-4.3.zip + http://www.docbook.org/xml/4.4/docbook-xml-4.4.zip + http://www.docbook.org/xml/4.5/docbook-xml-4.5.zip + + + + docbook-xml + + sgml-common + libxml2 + + + /usr/share/doc/ + /usr/share/xml + /etc/xml/docbook + /etc/xml/catalog + + + docbook + catalog + + + + + + 2014-11-17 + 4.5 + Rebuild + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2014-05-18 + 4.5 + Rebuild + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2014-01-22 + 4.5 + Rebuild + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2011-09-16 + 4.5 + First release + Pisi Linux Admins + admins@pisilinux.org + + + diff --git a/office/docbook/docbook-xml/translations.xml b/office/docbook/docbook-xml/translations.xml new file mode 100644 index 00000000..d11c34d8 --- /dev/null +++ b/office/docbook/docbook-xml/translations.xml @@ -0,0 +1,8 @@ + + + + docbook-xml + Docbook XML DTD + Docbook XML belirtimi (DTD) sürümlerini içerir. + + diff --git a/office/docbook/docbook-xsl/actions.py b/office/docbook/docbook-xsl/actions.py new file mode 100644 index 00000000..981e8c1d --- /dev/null +++ b/office/docbook/docbook-xsl/actions.py @@ -0,0 +1,21 @@ + +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import get + +def install(): + autotools.rawInstall("DESTDIR=%s/usr/share/xml/docbook/xsl-stylesheets" + % get.installDIR()) + pisitools.insinto("/usr/share/xml/docbook/xsl-stylesheets/","VERSION.xsl") + + # Don't ship the extensions + pisitools.remove("/usr/share/xml/docbook/xsl-stylesheets/extensions/*") + + pisitools.dodoc("AUTHORS", "BUGS", "COPYING", "NEWS", "README", + "RELEASE-NOTES.txt", "TODO", "VERSION") diff --git a/office/docbook/docbook-xsl/comar/package.py b/office/docbook/docbook-xsl/comar/package.py new file mode 100644 index 00000000..57066a10 --- /dev/null +++ b/office/docbook/docbook-xsl/comar/package.py @@ -0,0 +1,6 @@ +#!/usr/bin/python + +import os + +def postInstall(fromVersion, fromRelease, toVersion, toRelease): + os.system("/usr/bin/build-docbook-catalog") diff --git a/office/docbook/docbook-xsl/files/Makefile b/office/docbook/docbook-xsl/files/Makefile new file mode 100644 index 00000000..281656de --- /dev/null +++ b/office/docbook/docbook-xsl/files/Makefile @@ -0,0 +1,52 @@ +BINDIR = /usr/bin +DESTDIR = ..overridden in spec file.. + +all: install + +install: install-xsl install-img install-extensions install-misc install-epub + +install-xsl: + mkdir -p $(DESTDIR)/{common,eclipse,fo,html,htmlhelp/doc,javahelp,lib,template,xhtml,xhtml-1_1,manpages,profiling,highlighting,roundtrip,website} + cp common/*.dtd $(DESTDIR)/common + cp common/*.ent $(DESTDIR)/common + cp common/*.xml $(DESTDIR)/common + cp common/*.xsl $(DESTDIR)/common + cp eclipse/*.xsl $(DESTDIR)/eclipse + cp fo/*.xml $(DESTDIR)/fo + cp fo/*.xsl $(DESTDIR)/fo + cp html/*.xml $(DESTDIR)/html + cp html/*.xsl $(DESTDIR)/html + cp htmlhelp/*.xsl $(DESTDIR)/htmlhelp + cp javahelp/*.xsl $(DESTDIR)/javahelp + cp lib/*.xsl $(DESTDIR)/lib + cp template/*.xsl $(DESTDIR)/template + cp xhtml/*.xsl $(DESTDIR)/xhtml + cp xhtml-1_1/*.xsl $(DESTDIR)/xhtml-1_1 + cp manpages/*.xsl $(DESTDIR)/manpages + cp profiling/*.xsl $(DESTDIR)/profiling + cp highlighting/*.xml $(DESTDIR)/highlighting + cp highlighting/*.xsl $(DESTDIR)/highlighting + cp roundtrip/*.xml $(DESTDIR)/roundtrip + cp roundtrip/*.xsl $(DESTDIR)/roundtrip + cp roundtrip/*.dtd $(DESTDIR)/roundtrip + cp website/*.xsl $(DESTDIR)/website + +install-img: + mkdir -p $(DESTDIR)/images/callouts + cp images/*.gif $(DESTDIR)/images + cp images/*.png $(DESTDIR)/images + cp images/*.svg $(DESTDIR)/images + cp images/callouts/*.png $(DESTDIR)/images/callouts + cp images/callouts/*.gif $(DESTDIR)/images/callouts + cp images/callouts/*.svg $(DESTDIR)/images/callouts + +install-extensions: + mkdir -p $(DESTDIR)/extensions + cp -r extensions/* $(DESTDIR)/extensions + +install-epub: + mkdir -p $(DESTDIR)/epub + cp -r epub/* ${DESTDIR}/epub + +install-misc: + cp VERSION $(DESTDIR) diff --git a/office/docbook/docbook-xsl/files/docbook-xsl-list-item-body.patch b/office/docbook/docbook-xsl/files/docbook-xsl-list-item-body.patch new file mode 100644 index 00000000..a3d3819f --- /dev/null +++ b/office/docbook/docbook-xsl/files/docbook-xsl-list-item-body.patch @@ -0,0 +1,110 @@ +diff -ruNp docbook-xsl-1.74.0.orig/fo/lists.xsl docbook-xsl-1.74.0/fo/lists.xsl +--- docbook-xsl-1.74.0.orig/fo/lists.xsl 2008-08-06 13:32:46.000000000 +0200 ++++ docbook-xsl-1.74.0/fo/lists.xsl 2008-08-06 13:41:27.000000000 +0200 +@@ -248,9 +248,17 @@ + + + +- +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -446,10 +454,18 @@ + + + +- +- +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -925,9 +941,17 @@ + + + +- +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -951,9 +975,17 @@ + + + +- +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -1141,9 +1173,17 @@ + + + +- +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + diff --git a/office/docbook/docbook-xsl/files/docbook-xsl-mandir.patch b/office/docbook/docbook-xsl/files/docbook-xsl-mandir.patch new file mode 100644 index 00000000..d2c5a7e4 --- /dev/null +++ b/office/docbook/docbook-xsl/files/docbook-xsl-mandir.patch @@ -0,0 +1,19 @@ +diff -urNp docbook-xsl-1.76.1-orig/manpages/other.xsl docbook-xsl-1.76.1/manpages/other.xsl +--- docbook-xsl-1.76.1-orig/manpages/other.xsl 2010-08-27 05:14:52.000000000 +0200 ++++ docbook-xsl-1.76.1/manpages/other.xsl 2011-09-06 17:17:07.973737258 +0200 +@@ -595,7 +595,14 @@ manvolnum + Note: + (soelim stub) + +- ++ ++ ++ ++ ++ ++ ++ ++ + + + diff --git a/office/docbook/docbook-xsl/files/docbook-xsl-newmethods.patch b/office/docbook/docbook-xsl/files/docbook-xsl-newmethods.patch new file mode 100644 index 00000000..63e726d3 --- /dev/null +++ b/office/docbook/docbook-xsl/files/docbook-xsl-newmethods.patch @@ -0,0 +1,394 @@ +diff -ruNp docbook-xsl-1.74.0.orig/html/docbook.xsl docbook-xsl-1.74.0/html/docbook.xsl +--- docbook-xsl-1.74.0.orig/html/docbook.xsl 2008-06-01 23:36:39.000000000 +0200 ++++ docbook-xsl-1.74.0/html/docbook.xsl 2008-08-06 13:37:35.000000000 +0200 +@@ -26,6 +26,7 @@ + + + ++ + + + +@@ -44,6 +45,7 @@ + + + ++ + + + +diff -ruNp docbook-xsl-1.74.0.orig/html/dtbl.xsl docbook-xsl-1.74.0/html/dtbl.xsl +--- docbook-xsl-1.74.0.orig/html/dtbl.xsl 1970-01-01 01:00:00.000000000 +0100 ++++ docbook-xsl-1.74.0/html/dtbl.xsl 2008-08-06 13:37:35.000000000 +0200 +@@ -0,0 +1,293 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ " ++ ++ " is not a known unit. Applying scaling factor of 1 instead. ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ entering adjustColumnWidths( ++ ++ ++ ++ ) ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ total relative widths = ( ++ ++ ) ++ ++ ++ total absolute widths = ( ++ ++ ) ++ ++ ++ ++ ++ ++ ++ ++ all widths are absolute ++ ++ ++ ++ ++ ++ all widths are relative ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ result = ( ++ ++ ++ ++ ) ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ first.bad.column = ( ++ ++ ) ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ 1* ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ 0 ++ ++ ++ ++ ++ ++ ++ ++ ++ 0 ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +diff -ruNp docbook-xsl-1.74.0.orig/html/table.xsl docbook-xsl-1.74.0/html/table.xsl +--- docbook-xsl-1.74.0.orig/html/table.xsl 2008-06-01 23:36:39.000000000 +0200 ++++ docbook-xsl-1.74.0/html/table.xsl 2008-08-06 13:37:35.000000000 +0200 +@@ -5,7 +5,8 @@ + xmlns:xtbl="xalan://com.nwalsh.xalan.Table" + xmlns:lxslt="http://xml.apache.org/xslt" + xmlns:ptbl="http://nwalsh.com/xslt/ext/xsltproc/python/Table" +- exclude-result-prefixes="doc stbl xtbl lxslt ptbl" ++ xmlns:dtbl="http://docbook.sourceforge.net/dtbl" ++ exclude-result-prefixes="doc stbl xtbl lxslt ptbl dtbl" + version='1.0'> + + +@@ -365,6 +366,9 @@ + + ++ ++ ++ + + + +@@ -389,6 +393,9 @@ + + ++ ++ ++ + + + +diff -ruNp docbook-xsl-1.74.0.orig/lib/dumpfragment.xsl docbook-xsl-1.74.0/lib/dumpfragment.xsl +--- docbook-xsl-1.74.0.orig/lib/dumpfragment.xsl 1970-01-01 01:00:00.000000000 +0100 ++++ docbook-xsl-1.74.0/lib/dumpfragment.xsl 2008-08-06 13:37:35.000000000 +0200 +@@ -0,0 +1,30 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ =" ++ ++ " ++ ++ ++ ++ < ++ ++ > ++ ++ </ ++ > ++ ++ ++ +diff -urNp docbook-xsl-1.76.0-orig/html/param.xsl docbook-xsl-1.76.0/html/param.xsl +--- docbook-xsl-1.76.0-orig/html/param.xsl 2010-08-31 09:27:22.000000000 +0200 ++++ docbook-xsl-1.76.0/html/param.xsl 2010-09-06 11:01:07.916914161 +0200 +@@ -68,6 +68,7 @@ div.annotation-close { position: absolut + http://docbook.sourceforge.net/release/images/annot-close.png + http://docbook.sourceforge.net/release/images/annot-open.png + ++ + + http://docbook.sourceforge.net/release/script/AnchorPosition.js http://docbook.sourceforge.net/release/script/PopupWindow.js + diff --git a/office/docbook/docbook-xsl/files/docbook-xsl-non-constant-expressions.patch b/office/docbook/docbook-xsl/files/docbook-xsl-non-constant-expressions.patch new file mode 100644 index 00000000..0c3f6be7 --- /dev/null +++ b/office/docbook/docbook-xsl/files/docbook-xsl-non-constant-expressions.patch @@ -0,0 +1,25 @@ +diff -ruNp docbook-xsl-1.74.0.orig/fo/param.xsl docbook-xsl-1.74.0/fo/param.xsl +--- docbook-xsl-1.74.0.orig/fo/param.xsl 2008-08-06 13:32:46.000000000 +0200 ++++ docbook-xsl-1.74.0/fo/param.xsl 2008-08-06 13:38:36.000000000 +0200 +@@ -23,8 +23,8 @@ + always + always + +- +- ++ ++ + false + center + +@@ -334,8 +334,8 @@ set toc,title + bold + always + +- +- ++ ++ + 0pt + + diff --git a/office/docbook/docbook-xsl/files/docbook-xsl-pagesetup.patch b/office/docbook/docbook-xsl/files/docbook-xsl-pagesetup.patch new file mode 100644 index 00000000..2c9c62be --- /dev/null +++ b/office/docbook/docbook-xsl/files/docbook-xsl-pagesetup.patch @@ -0,0 +1,281 @@ +diff -ruNp docbook-xsl-1.74.0.orig/fo/pagesetup.xsl docbook-xsl-1.74.0/fo/pagesetup.xsl +--- docbook-xsl-1.74.0.orig/fo/pagesetup.xsl 2008-06-01 23:36:39.000000000 +0200 ++++ docbook-xsl-1.74.0/fo/pagesetup.xsl 2008-08-06 13:31:11.000000000 +0200 +@@ -1697,45 +1697,99 @@ + + + +- +- +- proportional-column-width( +- +- header +- +- +- +- +- +- ) +- +- +- +- +- proportional-column-width( +- +- header +- +- +- +- +- +- ) +- +- +- +- +- proportional-column-width( +- +- header +- +- +- +- +- +- ) +- +- ++ ++ ++ ++ ++ ++ header ++ ++ ++ ++ ++ ++ % ++ ++ ++ ++ ++ ++ ++ proportional-column-width( ++ ++ header ++ ++ ++ ++ ++ ++ ) ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ header ++ ++ ++ ++ ++ ++ % ++ ++ ++ ++ ++ ++ ++ proportional-column-width( ++ ++ header ++ ++ ++ ++ ++ ++ ) ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ header ++ ++ ++ ++ ++ ++ % ++ ++ ++ ++ ++ ++ ++ proportional-column-width( ++ ++ header ++ ++ ++ ++ ++ ++ ) ++ ++ ++ ++ + + + +@@ -2021,45 +2066,99 @@ + + + +- +- +- proportional-column-width( +- +- footer +- +- +- +- +- +- ) +- +- +- +- +- proportional-column-width( +- +- footer +- +- +- +- +- +- ) +- +- +- +- +- proportional-column-width( +- +- footer +- +- +- +- +- +- ) +- +- ++ ++ ++ ++ ++ ++ footer ++ ++ ++ ++ ++ ++ % ++ ++ ++ ++ ++ ++ ++ proportional-column-width( ++ ++ footer ++ ++ ++ ++ ++ ++ ) ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ footer ++ ++ ++ ++ ++ ++ % ++ ++ ++ ++ ++ ++ ++ proportional-column-width( ++ ++ footer ++ ++ ++ ++ ++ ++ ) ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ footer ++ ++ ++ ++ ++ ++ % ++ ++ ++ ++ ++ ++ ++ proportional-column-width( ++ ++ footer ++ ++ ++ ++ ++ ++ ) ++ ++ ++ ++ + + + diff --git a/office/docbook/docbook-xsl/pspec.xml b/office/docbook/docbook-xsl/pspec.xml new file mode 100644 index 00000000..bfb390c9 --- /dev/null +++ b/office/docbook/docbook-xsl/pspec.xml @@ -0,0 +1,72 @@ + + + + + docbook-xsl + http://wiki.docbook.org/topic/DocBookXslStylesheets + + PisiLinux Community + admins@pisilinux.org + + BSD + data + Norman Walsh's XSL stylesheets for DocBook XML + These XSL stylesheets allow you to transform any DocBook XML document to other formats such as HTML, FO and XHTML. + http://sourceforge.net/projects/docbook/files/docbook-xsl/1.78.1/docbook-xsl-1.78.1.tar.bz2 + + Makefile + + + docbook-xsl-pagesetup.patch + docbook-xsl-newmethods.patch + docbook-xsl-non-constant-expressions.patch + docbook-xsl-list-item-body.patch + docbook-xsl-mandir.patch + + + + + docbook-xsl + + docbook-xml + + + /usr/share/doc/docbook-xsl + /usr/share/xml + + + System.Package + + + + + + 2014-11-17 + 1.78.1 + Rebuild + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2014-05-18 + 1.78.1 + Rebuild + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2014-01-22 + 1.78.1 + Version bump. + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2012-10-10 + 1.77.1 + First release + Erdem Artan + admins@pisilinux.org + + + diff --git a/office/docbook/docbook-xsl/translations.xml b/office/docbook/docbook-xsl/translations.xml new file mode 100644 index 00000000..4aa2d3a8 --- /dev/null +++ b/office/docbook/docbook-xsl/translations.xml @@ -0,0 +1,8 @@ + + + + docbook-xsl + Docbook XSL biçemyaprakları + Docbook XSL biçemyapraklarını (stylesheets) içerir. + + diff --git a/office/docbook/sgml-common/actions.py b/office/docbook/sgml-common/actions.py new file mode 100644 index 00000000..edca75c6 --- /dev/null +++ b/office/docbook/sgml-common/actions.py @@ -0,0 +1,20 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import shelltools +from pisi.actionsapi import get + +def setup(): + autotools.autoreconf("-fi") + autotools.configure() + +def install(): + autotools.rawInstall("DESTDIR=%s" % get.installDIR()) + + pisitools.rename("/usr/share/doc/sgml-common-%s" % get.srcVERSION(), get.srcNAME()) + pisitools.dodoc("AUTHORS", "ChangeLog", "COPYING", "NEWS", "README") diff --git a/office/docbook/sgml-common/comar/package.py b/office/docbook/sgml-common/comar/package.py new file mode 100644 index 00000000..dea3ef3f --- /dev/null +++ b/office/docbook/sgml-common/comar/package.py @@ -0,0 +1,25 @@ +#!/usr/bin/python + +import os +import shutil + +def postInstall(fromVersion, fromRelease, toVersion, toRelease): + + os.system("/usr/bin/install-catalog --add \ + /etc/sgml/sgml-ent.cat \ + /usr/share/sgml/sgml-iso-entities-8879.1986/catalog") + + os.system("/usr/bin/install-catalog --add \ + /etc/sgml/sgml-docbook.cat \ + /etc/sgml/sgml-ent.cat") + +def postRemove(): + + os.system("/usr/bin/install-catalog --remove \ + /etc/sgml/sgml-ent.cat \ + /usr/share/sgml/sgml-iso-entities-8879.1986/catalog") + + os.system("/usr/bin/install-catalog --remove \ + /etc/sgml/sgml-docbook.cat \ + /etc/sgml/sgml-ent.cat") + diff --git a/office/docbook/sgml-common/files/sgml-common-0.6.3-configure.in.patch b/office/docbook/sgml-common/files/sgml-common-0.6.3-configure.in.patch new file mode 100644 index 00000000..85e25031 --- /dev/null +++ b/office/docbook/sgml-common/files/sgml-common-0.6.3-configure.in.patch @@ -0,0 +1,13 @@ +Index: sgml-common-0.6.3/configure.in +=================================================================== +--- sgml-common-0.6.3.orig/configure.in ++++ sgml-common-0.6.3/configure.in +@@ -3,7 +3,7 @@ AC_INIT(Makefile.am) + + AM_INIT_AUTOMAKE(sgml-common, 0.6.3) + +-docdir='$(prefix)/doc' ++docdir='$(prefix)/share/doc' + AC_SUBST(docdir) + + dnl Checks for programs. diff --git a/office/docbook/sgml-common/files/sgml-common-0.6.3-manpage-1.patch b/office/docbook/sgml-common/files/sgml-common-0.6.3-manpage-1.patch new file mode 100644 index 00000000..ee9d6503 --- /dev/null +++ b/office/docbook/sgml-common/files/sgml-common-0.6.3-manpage-1.patch @@ -0,0 +1,15 @@ +Submitted by: Thomas Pegg +Date: 2003-11-18 +Initial Package Version: 0.6.3 +Origin: Thomas Pegg +Description: Fixes syntax of Makefile.am for installation of man pages, +for use with current automake versions 1.7.8 and higher. + +Index: sgml-common-0.6.3/doc/man/Makefile.am +=================================================================== +--- sgml-common-0.6.3.orig/doc/man/Makefile.am ++++ sgml-common-0.6.3/doc/man/Makefile.am +@@ -1,2 +1 @@ +-man8dir = $(mandir)/man8 +-man8_DATA = *.8 ++man_MANS = install-catalog.8 diff --git a/office/docbook/sgml-common/pspec.xml b/office/docbook/sgml-common/pspec.xml new file mode 100644 index 00000000..9573e182 --- /dev/null +++ b/office/docbook/sgml-common/pspec.xml @@ -0,0 +1,52 @@ + + + + + sgml-common + http://www.linuxfromscratch.org/blfs/view/svn/pst/sgml-common.html + + PisiLinux Community + admins@pisilinux.org + + GPLv2 + data + Base ISO character entities and utilities for SGML + Sgml-common is a collection of entities and document type definitions (DTDs) useful for SGML processing. + http://gd.tuwien.ac.at/hci/kde/devel/docbook/SOURCES/sgml-common-0.6.3.tgz + + sgml-common-0.6.3-configure.in.patch + sgml-common-0.6.3-manpage-1.patch + + + + + sgml-common + + /etc/sgml + /usr/bin + /usr/share/doc/sgml-common + /usr/share/man + /usr/share/sgml + + + System.Package + + + + + + 2014-05-18 + 0.6.3 + Rebuild. + Serdar Soytetir + kaptan@pisilinux.org + + + 2010-10-13 + 0.6.3 + First release + Pisi Linux Admins + admins@pisilinux.org + + + diff --git a/office/docbook/sgml-common/translations.xml b/office/docbook/sgml-common/translations.xml new file mode 100644 index 00000000..84014056 --- /dev/null +++ b/office/docbook/sgml-common/translations.xml @@ -0,0 +1,8 @@ + + + + sgml-common + SGML ISO karakter nesneleri ve yardımcı programları + sgml-common SGML uygulamaları için kullanışlı olan içerikler ve belge tip belirtimleri (DTD) topluluğudur. + + diff --git a/office/docbook/xmlto/actions.py b/office/docbook/xmlto/actions.py new file mode 100644 index 00000000..1eb69be4 --- /dev/null +++ b/office/docbook/xmlto/actions.py @@ -0,0 +1,22 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 2 +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools + +def setup(): + autotools.configure("BASH=/bin/bash") + +def build(): + autotools.make() + +def check(): + autotools.make("check") + +def install(): + autotools.install() + + pisitools.dodoc("ChangeLog", "NEWS", "FAQ", "README", "AUTHORS", "doc/*") diff --git a/office/docbook/xmlto/pspec.xml b/office/docbook/xmlto/pspec.xml new file mode 100644 index 00000000..23dbcb7e --- /dev/null +++ b/office/docbook/xmlto/pspec.xml @@ -0,0 +1,63 @@ + + + + + xmlto + https://fedorahosted.org/xmlto/ + + PisiLinux Community + admins@pisilinux.org + + GPLv2+ + app:console + A frontend to an XSL toolchain + The purpose of xmlto is to convert an XML file to the desired format using whatever means necessary. + https://fedorahosted.org/releases/x/m/xmlto/xmlto-0.0.26.tar.gz + + libxslt + docbook-xsl + docbook-xml + + + + + xmlto + + docbook-xsl + docbook-xml + + + + /usr/bin + /usr/share/doc/xmlto + /usr/share/xmlto + /usr/share/man + + + + + + 2014-05-18 + 0.0.26 + Version bump. + Richard de Bruin + richdb@pisilinux.org + + + 2014-01-18 + 0.0.25 + Rebuild for 1.0 + Richard de Bruin + richdb@pisilinux.org + + + 2012-09-17 + 0.0.25 + First release + Serdar Soytetir + kaptan@pisilinux.org + + + diff --git a/office/docbook/xmlto/translations.xml b/office/docbook/xmlto/translations.xml new file mode 100644 index 00000000..d3f9eaf1 --- /dev/null +++ b/office/docbook/xmlto/translations.xml @@ -0,0 +1,8 @@ + + + + xmlto + XML ve DocBook için dönüşüm aracı + xmlto uygulamasının amacı verilen bir XML dosyasını istenen bir biçime dönüştürmektir. + + diff --git a/pisi-index.xml b/pisi-index.xml index fb821b27..4af73b7e 100644 --- a/pisi-index.xml +++ b/pisi-index.xml @@ -556,13 +556,9 @@ bc pisi cpio - unifdef - elfutils + docbook-xsl diffutils xmlto - asciidoc - pciutils-devel - numactl-devel patches/linux/patch-4.0.3.gz @@ -1169,6 +1165,363 @@ + + + mkinitramfs + http://www.busybox.net + + PisiLinux Community + admins@pisilinux.org + + GPLv2 + app:console + kernel.tools + A tool to create the initramfs image + initramfs image dosyası yaratmak için araç + Un outil pour créer les images initramfs + mkinitramfs contains a tool to create the initramfs image with busybox. + initramfs image dosyası yaratmak için araç + http://source.pisilinux.org/1.0/README.mkinitramfs + kernel/tools/mkinitramfs/pspec.xml + + + mkinitramfs + + disktype + busybox + + + /etc + /sbin + /lib/initramfs + /usr/share/doc/mkinitramfs + + + System.PackageHandler + + + mkinitramfs + init + udhcpc.script + hotplug + profile.rc + initramfs.conf + + + + + 2014-05-11 + 1.0.7 + Release bump. + Marcin Bojara + marcin@pisilinux.org + + + 2014-05-10 + 1.0.7 + Fix probing LVM devices + Marcin Bojara + marcin@pisilinux.org + + + 2013-09-10 + 1.0.7 + Disable mount tmpfs on /run + Marcin Bojara + marcin@pisilinux.org + + + 2013-09-05 + 1.0.7 + Add missing method to pakhandler.py + Marcin Bojara + marcin@pisilinux.org + + + 2013-09-03 + 1.0.7 + Fix default plymouth theme name. + Serdar Soytetir + kaptan@pisilinux.org + + + 2013-06-17 + 1.0.7 + Fix resume path. + Marcin Bojara + marcin@pisilinux.org + + + 2013-02-13 + 1.0.7 + Change loopbackimage address and name. + Serdar Soytetir + kaptan@pisilinux.org + + + 2013-01-13 + 1.0.7 + First release + Serdar Soytetir + kaptan@pisilinux.org + + + + + + docbook-xml + http://www.docbook.org/xml/ + + PisiLinux Community + admins@pisilinux.org + + LGPLv2.1 + data + office.docbook + Docbook XML DTD + Docbook XML DTD + Contains Docbook DTD for XML. A widely used XML scheme for writing documentation and help + Docbook XML belirtimi (DTD) sürümlerini içerir. + http://www.docbook.org/xml/4.1.2/docbkx412.zip + http://www.oasis-open.org/docbook/xml/4.1/docbkx41.zip + http://www.docbook.org/xml/4.2/docbook-xml-4.2.zip + http://www.docbook.org/xml/4.3/docbook-xml-4.3.zip + http://www.docbook.org/xml/4.4/docbook-xml-4.4.zip + http://www.docbook.org/xml/4.5/docbook-xml-4.5.zip + office/docbook/docbook-xml/pspec.xml + + + docbook-xml + + sgml-common + libxml2 + + + /usr/share/doc/ + /usr/share/xml + /etc/xml/docbook + /etc/xml/catalog + + + docbook + catalog + + + + + 2014-11-17 + 4.5 + Rebuild + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2014-05-18 + 4.5 + Rebuild + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2014-01-22 + 4.5 + Rebuild + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2011-09-16 + 4.5 + First release + Pisi Linux Admins + admins@pisilinux.org + + + + + + docbook-xsl + http://wiki.docbook.org/topic/DocBookXslStylesheets + + PisiLinux Community + admins@pisilinux.org + + BSD + data + office.docbook + Norman Walsh's XSL stylesheets for DocBook XML + Docbook XSL biçemyaprakları + These XSL stylesheets allow you to transform any DocBook XML document to other formats such as HTML, FO and XHTML. + Docbook XSL biçemyapraklarını (stylesheets) içerir. + http://sourceforge.net/projects/docbook/files/docbook-xsl/1.78.1/docbook-xsl-1.78.1.tar.bz2 + + Makefile + + + docbook-xsl-pagesetup.patch + docbook-xsl-newmethods.patch + docbook-xsl-non-constant-expressions.patch + docbook-xsl-list-item-body.patch + docbook-xsl-mandir.patch + + office/docbook/docbook-xsl/pspec.xml + + + docbook-xsl + + docbook-xml + + + /usr/share/doc/docbook-xsl + /usr/share/xml + + + System.Package + + + + + 2014-11-17 + 1.78.1 + Rebuild + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2014-05-18 + 1.78.1 + Rebuild + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2014-01-22 + 1.78.1 + Version bump. + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2012-10-10 + 1.77.1 + First release + Erdem Artan + admins@pisilinux.org + + + + + + sgml-common + http://www.linuxfromscratch.org/blfs/view/svn/pst/sgml-common.html + + PisiLinux Community + admins@pisilinux.org + + GPLv2 + data + office.docbook + Base ISO character entities and utilities for SGML + SGML ISO karakter nesneleri ve yardımcı programları + Sgml-common is a collection of entities and document type definitions (DTDs) useful for SGML processing. + sgml-common SGML uygulamaları için kullanışlı olan içerikler ve belge tip belirtimleri (DTD) topluluğudur. + http://gd.tuwien.ac.at/hci/kde/devel/docbook/SOURCES/sgml-common-0.6.3.tgz + + sgml-common-0.6.3-configure.in.patch + sgml-common-0.6.3-manpage-1.patch + + office/docbook/sgml-common/pspec.xml + + + sgml-common + + /etc/sgml + /usr/bin + /usr/share/doc/sgml-common + /usr/share/man + /usr/share/sgml + + + System.Package + + + + + 2014-05-18 + 0.6.3 + Rebuild. + Serdar Soytetir + kaptan@pisilinux.org + + + 2010-10-13 + 0.6.3 + First release + Pisi Linux Admins + admins@pisilinux.org + + + + + + xmlto + https://fedorahosted.org/xmlto/ + + PisiLinux Community + admins@pisilinux.org + + GPLv2+ + app:console + office.docbook + A frontend to an XSL toolchain + XML ve DocBook için dönüşüm aracı + The purpose of xmlto is to convert an XML file to the desired format using whatever means necessary. + xmlto uygulamasının amacı verilen bir XML dosyasını istenen bir biçime dönüştürmektir. + https://fedorahosted.org/releases/x/m/xmlto/xmlto-0.0.26.tar.gz + + libxslt + docbook-xsl + docbook-xml + + office/docbook/xmlto/pspec.xml + + + xmlto + + docbook-xsl + docbook-xml + + + /usr/bin + /usr/share/doc/xmlto + /usr/share/xmlto + /usr/share/man + + + + + 2014-05-18 + 0.0.26 + Version bump. + Richard de Bruin + richdb@pisilinux.org + + + 2014-01-18 + 0.0.25 + Rebuild for 1.0 + Richard de Bruin + richdb@pisilinux.org + + + 2012-09-17 + 0.0.25 + First release + Serdar Soytetir + kaptan@pisilinux.org + + + grub2 @@ -16680,112 +17033,6 @@ - - - icecream - http://en.opensuse.org/Icecream - - PisiLinux Community - admins@pisilinux.org - - GPLv2 - service - system.devel - Distributed C(++) compiling tool - Dağıtık C(++) derleme aracı - Herramienta de compilación C(++) distribuida - Icecream est un programme de compilation de code C/C++ distribuée sur plusieurs machines basé sur le code et les idées directrices de distcc. - Icecream is a program for distributed compiling of C/C++ code across several machines based on ideas and code by distcc. - Icecream; C/C++ kaynak kodunun, birden fazla makinede dağıtık olarak derlenmesi fikrine dayanan, "distcc" kodu temelinde yazılmış bir uygulamadır. - Icecream es un programa para compilación de código C/C++ distribuida en varios servidores, basado en ideas y código de distcc. - ftp://ftp.suse.com/pub/projects/icecream/icecc-1.0.1.tar.bz2 - - librsync-devel - - system/devel/icecream/pspec.xml - - - icecream - - librsync - libgcc - libcap-ng - - - /opt/icecream/sbin/iceccd - /opt/icecream/bin/icecc - /usr/libexec/icecc - /opt/icecream/lib - /opt/icecream/bin - /opt/icecream/include/ - /usr/share/doc - /usr/share/icecc - /usr/share/man - /lib/systemd/system/icecream-daemon.service - - - System.Service - - - icecream-daemon.service - - - - icecream-scheduler - Icecream scheduler which should only run on the master icecream node - - icecream - libgcc - - - /opt/icecream/sbin/icecc-scheduler - /lib/systemd/system/icecream-scheduler.service - - - System.Service - - - icecream-scheduler.service - - - - - 2014-05-11 - 1.0.1 - Release bump. - Marcin Bojara - marcin@pisilinux.org - - - 2013-10-22 - 1.0.1 - Rebuild. - Serdar Soytetir - kaptan@pisilinux.org - - - 2013-07-24 - 1.0.1 - Version bump. - Yusuf Aydemir - yusuf.aydemir@pisilinux.org - - - 2013-02-18 - 0.9.98.3 - v.bump - PisiLinux Community - admins@pisilinux.org - - - 2012-10-09 - 0.9.7 - First release - Erdem Artan - admins@pisilinux.org - - - libmpc @@ -19456,6 +19703,65 @@ + + + disktype + http://disktype.sourceforge.net/ + + PisiLinux Community + admins@pisilinux.org + + BSD + app:console + hardware.disk + Detect the content format of a disk or disk image + Disk veya disk görüntüsünün biçimsel içeriğini saptar + The purpose of disktype is to detect the content format of a disk or disk image. It knows about common file systems, partition tables, and boot codes.The program is written in C and is designed to compile on any modern Unix flavour. + Disktype'ın amacı disk veya disk görüntüsünün içerik yapısını denetlemektir. Yaygın dosya sistemlerini, bölümleme tablolarını ve önyükleme kodlarını bilir. C dilinde yazılmış, herhangi bir modern Unix derleme tadında tasarlanmıştır. + mirrors://sourceforge/disktype/disktype-9.tar.gz + + klibc + colorgcc + + + disktype.patch + vfat.patch + ext4.patch + + hardware/disk/disktype/pspec.xml + + + disktype + + /usr/bin + /usr/share/doc + /usr/share/man + + + + + 2015-04-01 + 9 + Release bump. + Marcin Bojara + marcin@pisilinux.org + + + 2013-10-29 + 9 + Rebuild + Yusuf Aydemir + yusuf.aydemir@pisilinux.org + + + 2012-08-23 + 9 + First release + PisiLinux Community + admins@pisilinux.org + + + lvm2 diff --git a/pisi-index.xml.sha1sum b/pisi-index.xml.sha1sum index 7ba6a5e6..a4c479bf 100644 --- a/pisi-index.xml.sha1sum +++ b/pisi-index.xml.sha1sum @@ -1 +1 @@ -b51768046af128bb91daccf579b2fc5d354ddd1e \ No newline at end of file +0ca4cdfea36b833daddaf6a74b9135fd328e375e \ No newline at end of file diff --git a/pisi-index.xml.xz b/pisi-index.xml.xz index 7eefa14a..0c095041 100644 Binary files a/pisi-index.xml.xz and b/pisi-index.xml.xz differ diff --git a/pisi-index.xml.xz.sha1sum b/pisi-index.xml.xz.sha1sum index c8e81892..53f9b18f 100644 --- a/pisi-index.xml.xz.sha1sum +++ b/pisi-index.xml.xz.sha1sum @@ -1 +1 @@ -d739b4faae04ea3d163ebbf1d7c3c888cf210797 \ No newline at end of file +d28c2f9f323d2b5367fc765dde97642215a3384f \ No newline at end of file