update to latest git

This commit is contained in:
Harald Hoyer 2011-10-21 12:44:53 +02:00
parent 8a80334789
commit 401ad95270
9 changed files with 401 additions and 100 deletions

View File

@ -0,0 +1,28 @@
From 4a049ce55681849e6338ee355ade3b7f92ca04d7 Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Fri, 12 Aug 2011 16:29:28 +0200
Subject: [PATCH] add x-bit to *.sh
---
0 files changed, 0 insertions(+), 0 deletions(-)
mode change 100644 => 100755 modules.d/90crypt/crypt-lib.sh
mode change 100644 => 100755 modules.d/90crypt/parse-keydev.sh
mode change 100644 => 100755 modules.d/90dm/dm-shutdown.sh
mode change 100644 => 100755 modules.d/90mdraid/md-shutdown.sh
mode change 100644 => 100755 modules.d/91crypt-gpg/crypt-gpg-lib.sh
diff --git a/modules.d/90crypt/crypt-lib.sh b/modules.d/90crypt/crypt-lib.sh
old mode 100644
new mode 100755
diff --git a/modules.d/90crypt/parse-keydev.sh b/modules.d/90crypt/parse-keydev.sh
old mode 100644
new mode 100755
diff --git a/modules.d/90dm/dm-shutdown.sh b/modules.d/90dm/dm-shutdown.sh
old mode 100644
new mode 100755
diff --git a/modules.d/90mdraid/md-shutdown.sh b/modules.d/90mdraid/md-shutdown.sh
old mode 100644
new mode 100755
diff --git a/modules.d/91crypt-gpg/crypt-gpg-lib.sh b/modules.d/91crypt-gpg/crypt-gpg-lib.sh
old mode 100644
new mode 100755

View File

@ -0,0 +1,22 @@
From 4f6eb791b481bd9cab0729010690ee9376742e2c Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Fri, 21 Oct 2011 09:35:38 +0200
Subject: [PATCH] 90livenet/module-setup.sh: silence check for wget
---
modules.d/90livenet/module-setup.sh | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/modules.d/90livenet/module-setup.sh b/modules.d/90livenet/module-setup.sh
index 3ee7521..a6ee3e0 100755
--- a/modules.d/90livenet/module-setup.sh
+++ b/modules.d/90livenet/module-setup.sh
@@ -4,7 +4,7 @@
check() {
# a live, host-only image doesn't really make a lot of sense
[[ $hostonly ]] && return 1
- command -v wget || return 1
+ command -v wget >/dev/null || return 1
return 0
}

View File

@ -0,0 +1,22 @@
From bfdc0eba0b0a9f2c61bec7159af13f7405a5dd17 Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Fri, 21 Oct 2011 10:14:49 +0200
Subject: [PATCH] 90dmsquash-live: do not install by default
---
modules.d/90dmsquash-live/module-setup.sh | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/modules.d/90dmsquash-live/module-setup.sh b/modules.d/90dmsquash-live/module-setup.sh
index 684655f..de1eed6 100755
--- a/modules.d/90dmsquash-live/module-setup.sh
+++ b/modules.d/90dmsquash-live/module-setup.sh
@@ -5,7 +5,7 @@
check() {
# a live host-only image doesn't really make a lot of sense
[[ $hostonly ]] && return 1
- return 0
+ return 255
}
depends() {

View File

@ -0,0 +1,22 @@
From 624c70d763e9a201b5450fea10ac5e32939cf2a2 Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Fri, 21 Oct 2011 10:15:09 +0200
Subject: [PATCH] 90livenet: do not install by default
---
modules.d/90livenet/module-setup.sh | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/modules.d/90livenet/module-setup.sh b/modules.d/90livenet/module-setup.sh
index a6ee3e0..5cfbb75 100755
--- a/modules.d/90livenet/module-setup.sh
+++ b/modules.d/90livenet/module-setup.sh
@@ -5,7 +5,7 @@ check() {
# a live, host-only image doesn't really make a lot of sense
[[ $hostonly ]] && return 1
command -v wget >/dev/null || return 1
- return 0
+ return 255
}
depends() {

View File

@ -0,0 +1,129 @@
From 4637c5c24252d636fc57af1a9aaaf629140a77c7 Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Fri, 21 Oct 2011 10:09:55 +0200
Subject: [PATCH] dracut-functions: do not install files from current
directory
Protect against relative pathnames without a slash for all inst_*()
functions.
---
dracut-functions | 38 +++++++++++++++++++++-----------------
1 files changed, 21 insertions(+), 17 deletions(-)
diff --git a/dracut-functions b/dracut-functions
index 70a467b..a56e460 100755
--- a/dracut-functions
+++ b/dracut-functions
@@ -272,10 +272,10 @@ check_vol_slaves() {
# will create ${initdir}/lib64, ${initdir}/lib64/file,
# and a symlink ${initdir}/lib -> lib64.
inst_dir() {
- [[ -e ${initdir}"$1" ]] && return 0 # already there
+ [[ -e ${initdir}/"$1" ]] && return 0 # already there
local _dir="$1" _part="${1%/*}" _file
- while [[ "$_part" != "${_part%/*}" ]] && ! [[ -e "${initdir}${_part}" ]]; do
+ while [[ "$_part" != "${_part%/*}" ]] && ! [[ -e "${initdir}/${_part}" ]]; do
_dir="$_part $_dir"
_part=${_part%/*}
done
@@ -306,12 +306,13 @@ inst_dir() {
# Location of the image dir is assumed to be $initdir
# We never overwrite the target if it exists.
inst_simple() {
- [[ -f $1 ]] || return 1
+ [[ -f "$1" ]] || return 1
+ strstr "$1" "/" || return 1
local _src=$1 target="${2:-$1}"
- if ! [[ -d ${initdir}$target ]]; then
- [[ -e ${initdir}$target ]] && return 0
- [[ -h ${initdir}$target ]] && return 0
+ if ! [[ -d ${initdir}/$target ]]; then
+ [[ -e ${initdir}/$target ]] && return 0
+ [[ -h ${initdir}/$target ]] && return 0
inst_dir "${target%/*}"
fi
# install checksum files also
@@ -319,7 +320,7 @@ inst_simple() {
inst "${_src%/*}/.${_src##*/}.hmac" "${target%/*}/.${target##*/}.hmac"
fi
ddebug "Installing $_src"
- cp --sparse=always -pfL "$_src" "${initdir}$target"
+ cp --sparse=always -pfL "$_src" "${initdir}/$target"
}
# find symlinks linked to given library file
@@ -351,8 +352,9 @@ rev_lib_symlinks() {
# It handles making symlinks according to how the original library
# is referenced.
inst_library() {
- local _src=$1 _dest=${2:-$1} _lib _reallib _symlink
- [[ -e $initdir$_dest ]] && return 0
+ local _src="$1" _dest=${2:-$1} _lib _reallib _symlink
+ strstr "$1" "/" || return 1
+ [[ -e $initdir/$_dest ]] && return 0
if [[ -L $_src ]]; then
# install checksum files also
if [[ -e "${_src%/*}/.${_src##*/}.hmac" ]]; then
@@ -361,14 +363,14 @@ inst_library() {
_reallib=$(readlink -f "$_src")
inst_simple "$_reallib" "$_reallib"
inst_dir "${_dest%/*}"
- ln -sfn $(convert_abs_rel "${_dest}" "${_reallib}") "${initdir}${_dest}"
+ ln -sfn $(convert_abs_rel "${_dest}" "${_reallib}") "${initdir}/${_dest}"
else
inst_simple "$_src" "$_dest"
fi
# Create additional symlinks. See rev_symlinks description.
for _symlink in $(rev_lib_symlinks $_src) $(rev_lib_symlinks $_reallib); do
- [[ ! -e $initdir$_symlink ]] && {
+ [[ ! -e $initdir/$_symlink ]] && {
ddebug "Creating extra symlink: $_symlink"
inst_symlink $_symlink
}
@@ -396,7 +398,7 @@ inst_binary() {
_bin=$(find_binary "$1") || return 1
_target=${2:-$_bin}
inst_symlink $_bin $_target && return 0
- [[ -e $initdir$_target ]] && return 0
+ [[ -e $initdir/$_target ]] && return 0
# If the binary being installed is also a library, add it to the loop.
_so_regex='([^ ]*/lib[^/]*/[^ ]*\.so[^ ]*)'
@@ -414,7 +416,7 @@ inst_binary() {
fi
[[ $_line =~ $_so_regex ]] || continue
_file=${BASH_REMATCH[1]}
- [[ -e ${initdir}$_file ]] && continue
+ [[ -e ${initdir}/$_file ]] && continue
# See if we are loading an optimized version of a shared lib.
if [[ $_file =~ $_lib_regex ]]; then
@@ -439,19 +441,21 @@ inst_binary() {
# same as above, except for shell scripts.
# If your shell script does not start with shebang, it is not a shell script.
inst_script() {
- [[ -f $1 ]] || return 1
+ local _bin
+ _bin=$(find_binary "$1") || return 1
local _line _shebang_regex
- read -r -n 80 _line <"$1"
+ read -r -n 80 _line <"$_bin"
# If debug is set, clean unprintable chars to prevent messing up the term
[[ $debug ]] && _line=$(echo -n "$_line" | tr -c -d '[:print:][:space:]')
_shebang_regex='(#! *)(/[^ ]+).*'
[[ $_line =~ $_shebang_regex ]] || return 1
- inst "${BASH_REMATCH[2]}" && inst_simple "$@"
+ inst "${BASH_REMATCH[2]}" && inst_binary "$@"
}
# same as above, but specialized for symlinks
inst_symlink() {
- local _src=$1 _target=$initdir${2:-$1} _realsrc
+ local _src=$1 _target=$initdir/${2:-$1} _realsrc
+ strstr "$1" "/" || return 1
[[ -L $1 ]] || return 1
[[ -L $_target ]] && return 0
_realsrc=$(readlink -f "$_src")

View File

@ -0,0 +1,32 @@
From f60995adb4b5498a2b1dda112e3cd6fab57c9ba1 Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Fri, 21 Oct 2011 12:33:05 +0200
Subject: [PATCH] dracut-functions:inst_script() call inst_binary() with found
bin
call inst_binary() with the already found executable to prevent
searching for the binary again
---
dracut-functions | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/dracut-functions b/dracut-functions
index a56e460..a5d6d1f 100755
--- a/dracut-functions
+++ b/dracut-functions
@@ -443,13 +443,14 @@ inst_binary() {
inst_script() {
local _bin
_bin=$(find_binary "$1") || return 1
+ shift
local _line _shebang_regex
read -r -n 80 _line <"$_bin"
# If debug is set, clean unprintable chars to prevent messing up the term
[[ $debug ]] && _line=$(echo -n "$_line" | tr -c -d '[:print:][:space:]')
_shebang_regex='(#! *)(/[^ ]+).*'
[[ $_line =~ $_shebang_regex ]] || return 1
- inst "${BASH_REMATCH[2]}" && inst_binary "$@"
+ inst "${BASH_REMATCH[2]}" && inst_binary "$_bin" "$@"
}
# same as above, but specialized for symlinks

View File

@ -0,0 +1,88 @@
From 85cda6ae16722452e2e8ced77e73be44e4f4a2ad Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Fri, 21 Oct 2011 12:35:07 +0200
Subject: [PATCH] dracut.spec: apply patches with git
This will take all renames and mode changes.
---
dracut.spec | 10 +++++++++-
git2spec.pl | 21 +--------------------
2 files changed, 10 insertions(+), 21 deletions(-)
diff --git a/dracut.spec b/dracut.spec
index f9848ed..69809ca 100644
--- a/dracut.spec
+++ b/dracut.spec
@@ -24,7 +24,7 @@ URL: https://dracut.wiki.kernel.org/
Source0: http://www.kernel.org/pub/linux/utils/boot/dracut/dracut-%{version}.tar.bz2
BuildArch: noarch
-BuildRequires: dash bash
+BuildRequires: dash bash git
%if 0%{?fedora} || 0%{?rhel} > 6
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
%endif
@@ -155,6 +155,14 @@ This package contains tools to assemble the local initrd and host configuration.
%prep
%setup -q -n %{name}-%{version}
+git init
+git config user.email "dracut-maint@redhat.com"
+git config user.name "Fedora dracut team"
+git add .
+git commit -a -q -m "%{version} baseline."
+
+# Apply all the patches.
+git am -p1 %{patches}
%build
make
diff --git a/git2spec.pl b/git2spec.pl
index 2ea74c8..9db42aa 100755
--- a/git2spec.pl
+++ b/git2spec.pl
@@ -19,20 +19,12 @@ sub last_tag {
sub create_patches {
my $tag=shift;
my $num=0;
- open( GIT, 'git format-patch --no-renames -N --no-signature '.$tag.' |');
+ open( GIT, 'git format-patch -N --no-signature '.$tag.' |');
@lines=<GIT>;
close GIT; # be done
return @lines;
};
-sub filter_patch {
- my $patch=shift;
- open(P, $patch);
- @lines=<P>;
- close(P);
- grep (/^ 0 files changed/, @lines);
-}
-
use POSIX qw(strftime);
my $datestr = strftime "%Y%m%d", gmtime;
@@ -55,22 +47,11 @@ while(<>) {
print $_;
$num=1;
for(@patches) {
- next if filter_patch $_;
print "Patch$num: $_";
$num++;
}
print "\n";
}
- elsif (/^%setup/) {
- print $_;
- $num=1;
- for(@patches) {
- next if filter_patch $_;
- print "%patch$num -p1\n";
- $num++;
- }
- print "\n";
- }
else {
print $_;
}

View File

@ -0,0 +1,35 @@
From 7c3a7bd1f0414d8dcdfa16df108c28815fe921bb Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Fri, 21 Oct 2011 12:35:34 +0200
Subject: [PATCH] dracut.spec: require new util-linux version with new
switch_root
new switch_root knows how to handle "/run"
---
dracut.spec | 7 +------
1 files changed, 1 insertions(+), 6 deletions(-)
diff --git a/dracut.spec b/dracut.spec
index 69809ca..eaa39a0 100644
--- a/dracut.spec
+++ b/dracut.spec
@@ -72,18 +72,13 @@ Requires: module-init-tools >= 3.7-9
Requires: sed
Requires: tar
Requires: udev
+Requires: util-linux >= 2.20
%if 0%{?fedora} || 0%{?rhel} > 6
-Requires: util-linux >= 2.16
Requires: initscripts >= 8.63-1
Requires: plymouth >= 0.8.0-0.2009.29.09.19.1
%endif
-%if 0%{?suse_version}
-Requires: util-linux >= 2.16
-%endif
-
-
%description
Dracut contains tools to create a bootable initramfs for 2.6 Linux kernels.
Unlike existing implementations, dracut does hard-code as little as possible

View File

@ -8,7 +8,7 @@
Name: dracut Name: dracut
Version: 013 Version: 013
Release: 93.git20111020%{?dist} Release: 100.git20111021%{?dist}
Summary: Initramfs generator using udev Summary: Initramfs generator using udev
%if 0%{?fedora} || 0%{?rhel} > 6 %if 0%{?fedora} || 0%{?rhel} > 6
@ -22,7 +22,7 @@ URL: https://dracut.wiki.kernel.org/
# Source can be generated by # Source can be generated by
# http://git.kernel.org/?p=boot/dracut/dracut.git;a=snapshot;h=%{version};sf=tgz # http://git.kernel.org/?p=boot/dracut/dracut.git;a=snapshot;h=%{version};sf=tgz
Source0: http://www.kernel.org/pub/linux/utils/boot/dracut/dracut-%{version}.tar.bz2 Source0: http://www.kernel.org/pub/linux/utils/boot/dracut/dracut-%{version}.tar.bz2
Patch1: 0001-add-x-bit-to-.sh.patch
Patch2: 0002-90dmsquash-live-dmsquash-live-root-include-fs_lib.sh.patch Patch2: 0002-90dmsquash-live-dmsquash-live-root-include-fs_lib.sh.patch
Patch3: 0003-fix-live-crash-with-livenet-installed.patch Patch3: 0003-fix-live-crash-with-livenet-installed.patch
Patch4: 0004-profile.py-parse-the-output-of-dracut-profile-for-pr.patch Patch4: 0004-profile.py-parse-the-output-of-dracut-profile-for-pr.patch
@ -114,9 +114,17 @@ Patch89: 0089-minor-changes.patch
Patch90: 0090-90livenet-check-for-wget.patch Patch90: 0090-90livenet-check-for-wget.patch
Patch91: 0091-dracut-logger-re-set-debugging.patch Patch91: 0091-dracut-logger-re-set-debugging.patch
Patch92: 0092-dracut-functions-inst_dir-handle-relative-symlinks.patch Patch92: 0092-dracut-functions-inst_dir-handle-relative-symlinks.patch
Patch93: 0093-90livenet-module-setup.sh-silence-check-for-wget.patch
Patch94: 0094-90dmsquash-live-do-not-install-by-default.patch
Patch95: 0095-90livenet-do-not-install-by-default.patch
Patch96: 0096-dracut-functions-do-not-install-files-from-current-d.patch
Patch97: 0097-dracut-functions-inst_script-call-inst_binary-with-f.patch
Patch98: 0098-dracut.spec-apply-patches-with-git.patch
Patch99: 0099-dracut.spec-require-new-util-linux-version-with-new-.patch
BuildArch: noarch BuildArch: noarch
BuildRequires: dash bash BuildRequires: dash bash git
%if 0%{?fedora} || 0%{?rhel} > 6 %if 0%{?fedora} || 0%{?rhel} > 6
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
%endif %endif
@ -164,18 +172,13 @@ Requires: module-init-tools >= 3.7-9
Requires: sed Requires: sed
Requires: tar Requires: tar
Requires: udev Requires: udev
Requires: util-linux >= 2.20
%if 0%{?fedora} || 0%{?rhel} > 6 %if 0%{?fedora} || 0%{?rhel} > 6
Requires: util-linux >= 2.16
Requires: initscripts >= 8.63-1 Requires: initscripts >= 8.63-1
Requires: plymouth >= 0.8.0-0.2009.29.09.19.1 Requires: plymouth >= 0.8.0-0.2009.29.09.19.1
%endif %endif
%if 0%{?suse_version}
Requires: util-linux >= 2.16
%endif
%description %description
Dracut contains tools to create a bootable initramfs for 2.6 Linux kernels. Dracut contains tools to create a bootable initramfs for 2.6 Linux kernels.
Unlike existing implementations, dracut does hard-code as little as possible Unlike existing implementations, dracut does hard-code as little as possible
@ -247,97 +250,14 @@ This package contains tools to assemble the local initrd and host configuration.
%prep %prep
%setup -q -n %{name}-%{version} %setup -q -n %{name}-%{version}
%patch2 -p1 git init
%patch3 -p1 git config user.email "dracut-maint@redhat.com"
%patch4 -p1 git config user.name "Fedora dracut team"
%patch5 -p1 git add .
%patch6 -p1 git commit -a -q -m "%{version} baseline."
%patch7 -p1
%patch8 -p1 # Apply all the patches.
%patch9 -p1 git am -p1 %{patches}
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch13 -p1
%patch14 -p1
%patch15 -p1
%patch16 -p1
%patch17 -p1
%patch18 -p1
%patch19 -p1
%patch20 -p1
%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch24 -p1
%patch25 -p1
%patch26 -p1
%patch27 -p1
%patch28 -p1
%patch29 -p1
%patch30 -p1
%patch31 -p1
%patch32 -p1
%patch33 -p1
%patch34 -p1
%patch35 -p1
%patch36 -p1
%patch37 -p1
%patch38 -p1
%patch39 -p1
%patch40 -p1
%patch41 -p1
%patch42 -p1
%patch43 -p1
%patch44 -p1
%patch45 -p1
%patch46 -p1
%patch47 -p1
%patch48 -p1
%patch49 -p1
%patch50 -p1
%patch51 -p1
%patch52 -p1
%patch53 -p1
%patch54 -p1
%patch55 -p1
%patch56 -p1
%patch57 -p1
%patch58 -p1
%patch59 -p1
%patch60 -p1
%patch61 -p1
%patch62 -p1
%patch63 -p1
%patch64 -p1
%patch65 -p1
%patch66 -p1
%patch67 -p1
%patch68 -p1
%patch69 -p1
%patch70 -p1
%patch71 -p1
%patch72 -p1
%patch73 -p1
%patch74 -p1
%patch75 -p1
%patch76 -p1
%patch77 -p1
%patch78 -p1
%patch79 -p1
%patch80 -p1
%patch81 -p1
%patch82 -p1
%patch83 -p1
%patch84 -p1
%patch85 -p1
%patch86 -p1
%patch87 -p1
%patch88 -p1
%patch89 -p1
%patch90 -p1
%patch91 -p1
%patch92 -p1
%build %build
make make
@ -477,6 +397,9 @@ rm -rf $RPM_BUILD_ROOT
%dir /var/lib/dracut/overlay %dir /var/lib/dracut/overlay
%changelog %changelog
* Fri Oct 21 2011 Harald Hoyer <harald@redhat.com> 013-100.git20111021
- update to latest git
* Thu Oct 20 2011 Harald Hoyer <harald@redhat.com> 013-93.git20111020 * Thu Oct 20 2011 Harald Hoyer <harald@redhat.com> 013-93.git20111020
- update to latest git - update to latest git