From 41b4c09fe5d0d8b888992e82b3fbbcb95bd39809 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ertu=C4=9Frul=20Erata?= Date: Sun, 17 May 2015 20:03:20 +0300 Subject: [PATCH] continue --- ...içindeki derleyici gcc olarak değiştirildi | 1 + hardware/disk/disktype/actions.py | 19 + hardware/disk/disktype/files/disktype.patch | 80 +++ hardware/disk/disktype/files/ext4.patch | 112 ++++ hardware/disk/disktype/files/vfat.patch | 19 + hardware/disk/disktype/pspec.xml | 60 ++ hardware/disk/disktype/translations.xml | 8 + kernel/tools/component.xml | 3 + kernel/tools/mkinitramfs/actions.py | 19 + kernel/tools/mkinitramfs/comar/pakhandler.py | 24 + kernel/tools/mkinitramfs/files/hotplug | 14 + kernel/tools/mkinitramfs/files/init | 593 ++++++++++++++++++ kernel/tools/mkinitramfs/files/initramfs.conf | 29 + kernel/tools/mkinitramfs/files/mkinitramfs | 586 +++++++++++++++++ kernel/tools/mkinitramfs/files/profile.rc | 6 + kernel/tools/mkinitramfs/files/udhcpc.script | 85 +++ kernel/tools/mkinitramfs/pspec.xml | 101 +++ kernel/tools/mkinitramfs/translations.xml | 9 + office/component.xml | 3 + office/docbook/component.xml | 3 + office/docbook/docbook-xml/actions.py | 19 + office/docbook/docbook-xml/files/catalog | 12 + office/docbook/docbook-xml/files/docbook | 52 ++ office/docbook/docbook-xml/pspec.xml | 71 +++ office/docbook/docbook-xml/translations.xml | 8 + office/docbook/docbook-xsl/actions.py | 21 + office/docbook/docbook-xsl/comar/package.py | 6 + office/docbook/docbook-xsl/files/Makefile | 52 ++ .../files/docbook-xsl-list-item-body.patch | 110 ++++ .../files/docbook-xsl-mandir.patch | 19 + .../files/docbook-xsl-newmethods.patch | 394 ++++++++++++ ...docbook-xsl-non-constant-expressions.patch | 25 + .../files/docbook-xsl-pagesetup.patch | 281 +++++++++ office/docbook/docbook-xsl/pspec.xml | 72 +++ office/docbook/docbook-xsl/translations.xml | 8 + office/docbook/sgml-common/actions.py | 20 + office/docbook/sgml-common/comar/package.py | 25 + .../sgml-common-0.6.3-configure.in.patch | 13 + .../files/sgml-common-0.6.3-manpage-1.patch | 15 + office/docbook/sgml-common/pspec.xml | 52 ++ office/docbook/sgml-common/translations.xml | 8 + office/docbook/xmlto/actions.py | 22 + office/docbook/xmlto/pspec.xml | 63 ++ office/docbook/xmlto/translations.xml | 8 + pisi-index.xml | 528 ++++++++++++---- pisi-index.xml.sha1sum | 2 +- pisi-index.xml.xz | Bin 94832 -> 96340 bytes pisi-index.xml.xz.sha1sum | 2 +- 48 files changed, 3569 insertions(+), 113 deletions(-) create mode 100644 hardware/disk/disktype/Makefile içindeki derleyici gcc olarak değiştirildi create mode 100644 hardware/disk/disktype/actions.py create mode 100644 hardware/disk/disktype/files/disktype.patch create mode 100644 hardware/disk/disktype/files/ext4.patch create mode 100644 hardware/disk/disktype/files/vfat.patch create mode 100644 hardware/disk/disktype/pspec.xml create mode 100644 hardware/disk/disktype/translations.xml create mode 100644 kernel/tools/component.xml create mode 100644 kernel/tools/mkinitramfs/actions.py create mode 100644 kernel/tools/mkinitramfs/comar/pakhandler.py create mode 100644 kernel/tools/mkinitramfs/files/hotplug create mode 100644 kernel/tools/mkinitramfs/files/init create mode 100644 kernel/tools/mkinitramfs/files/initramfs.conf create mode 100644 kernel/tools/mkinitramfs/files/mkinitramfs create mode 100644 kernel/tools/mkinitramfs/files/profile.rc create mode 100644 kernel/tools/mkinitramfs/files/udhcpc.script create mode 100644 kernel/tools/mkinitramfs/pspec.xml create mode 100644 kernel/tools/mkinitramfs/translations.xml create mode 100644 office/component.xml create mode 100644 office/docbook/component.xml create mode 100644 office/docbook/docbook-xml/actions.py create mode 100644 office/docbook/docbook-xml/files/catalog create mode 100644 office/docbook/docbook-xml/files/docbook create mode 100644 office/docbook/docbook-xml/pspec.xml create mode 100644 office/docbook/docbook-xml/translations.xml create mode 100644 office/docbook/docbook-xsl/actions.py create mode 100644 office/docbook/docbook-xsl/comar/package.py create mode 100644 office/docbook/docbook-xsl/files/Makefile create mode 100644 office/docbook/docbook-xsl/files/docbook-xsl-list-item-body.patch create mode 100644 office/docbook/docbook-xsl/files/docbook-xsl-mandir.patch create mode 100644 office/docbook/docbook-xsl/files/docbook-xsl-newmethods.patch create mode 100644 office/docbook/docbook-xsl/files/docbook-xsl-non-constant-expressions.patch create mode 100644 office/docbook/docbook-xsl/files/docbook-xsl-pagesetup.patch create mode 100644 office/docbook/docbook-xsl/pspec.xml create mode 100644 office/docbook/docbook-xsl/translations.xml create mode 100644 office/docbook/sgml-common/actions.py create mode 100644 office/docbook/sgml-common/comar/package.py create mode 100644 office/docbook/sgml-common/files/sgml-common-0.6.3-configure.in.patch create mode 100644 office/docbook/sgml-common/files/sgml-common-0.6.3-manpage-1.patch create mode 100644 office/docbook/sgml-common/pspec.xml create mode 100644 office/docbook/sgml-common/translations.xml create mode 100644 office/docbook/xmlto/actions.py create mode 100644 office/docbook/xmlto/pspec.xml create mode 100644 office/docbook/xmlto/translations.xml 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 7eefa14a67bc2bd6b7a24f80567bc7021557f056..0c09504161a70f25eae7a4a83feebc2832f770af 100644 GIT binary patch delta 92854 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⪼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] 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 z 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

+9=aTA; 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�Wk>Lau^eS=r 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 FSy~3UTsQy# 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