Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
alpine-conf
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
18
Issues
18
List
Boards
Labels
Service Desk
Milestones
Merge Requests
3
Merge Requests
3
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
alpine
alpine-conf
Commits
ef798bbd
Commit
ef798bbd
authored
Oct 27, 2014
by
Kaarle Ritvanen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update-kernel: override options for flavor, features, and packages
parent
82ae0882
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
52 additions
and
19 deletions
+52
-19
update-kernel.in
update-kernel.in
+52
-19
No files found.
update-kernel.in
View file @
ef798bbd
...
@@ -9,16 +9,47 @@
...
@@ -9,16 +9,47 @@
# Copyright (c) 2014 Kaarle Ritvanen
# Copyright (c) 2014 Kaarle Ritvanen
TMPDIR
=
SIGNALS
=
"HUP INT TERM"
SCRIPT
=
update-kernel
SCRIPT
=
update-kernel
VIRTUAL
=
.tmp-
$SCRIPT
VIRTUAL
=
.tmp-
$SCRIPT
FLAVOR
=
DESTDIR
=
$1
MNTDIR
=
MNTDIR
=
PACKAGES
=
SIGNALS
=
"HUP INT TERM"
TMPDIR
=
features
=
OPTS
=
$(
getopt
-l
flavor:,feature:,package:
-n
$SCRIPT
-o
f:F:p:
--
"
$@
"
)
eval set
--
"
$OPTS
"
while
:
;
do
case
"
$1
"
in
-f
|
--flavor
)
FLAVOR
=
$2
;;
-F
|
--feature
)
features
=
"
$features
$2
"
;;
-p
|
--package
)
PACKAGES
=
"
$PACKAGES
$2
"
;;
--
)
break
;;
esac
shift
2
done
DESTDIR
=
$2
error
()
{
echo
"
$1
"
>
&2
exit
1
}
if
[
-z
"
$DESTDIR
"
]
;
then
if
[
-z
"
$DESTDIR
"
]
;
then
[
"
$FLAVOR
"
]
&&
error
"Cannot specify flavor when updating the current kernel"
while
read
MOUNT
;
do
while
read
MOUNT
;
do
set
--
$MOUNT
set
--
$MOUNT
[
$2
=
/.modloop
]
||
continue
[
$2
=
/.modloop
]
||
continue
...
@@ -27,10 +58,7 @@ if [ -z "$DESTDIR" ]; then
...
@@ -27,10 +58,7 @@ if [ -z "$DESTDIR" ]; then
break
break
done
< /proc/mounts
done
< /proc/mounts
if
[
-z
"
$MNTDIR
"
]
;
then
[
"
$MNTDIR
"
]
||
error
"Module loopback device not mounted"
echo
"Module loopback device not mounted"
>
&2
exit
1
fi
fi
fi
remount
()
{
remount
()
{
...
@@ -55,13 +83,13 @@ trap clean_up EXIT $SIGNALS
...
@@ -55,13 +83,13 @@ trap clean_up EXIT $SIGNALS
apk add
-qU
-t
$VIRTUAL
mkinitfs squashfs-tools
apk add
-qU
-t
$VIRTUAL
mkinitfs squashfs-tools
.
/etc/mkinitfs/mkinitfs.conf
if
[
-z
"
$features
"
]
;
then
.
/etc/mkinitfs/mkinitfs.conf
fi
FLAVOR
=
$(
uname
-r
|
cut
-d
-
-f
3-
)
KVER_FLAVOR
=
-
$FLAVOR
if
[
-z
"
$FLAVOR
"
]
;
then
if
[
-z
"
$FLAVOR
"
]
;
then
FLAVOR
=
vanilla
FLAVOR
=
$(
uname
-r
|
cut
-d
-
-f
3-
)
KVER_FLAVOR
=
[
"
$FLAVOR
"
]
||
FLAVOR
=
vanilla
fi
fi
TMPDIR
=
$(
mktemp
-dt
$SCRIPT
.XXXXXX
)
TMPDIR
=
$(
mktemp
-dt
$SCRIPT
.XXXXXX
)
...
@@ -85,13 +113,17 @@ extra_pkgs() {
...
@@ -85,13 +113,17 @@ extra_pkgs() {
fi
fi
}
}
add_pkgs
-U
--initdb
alpine-base linux-
$FLAVOR
linux-firmware
add_pkgs
-U
--initdb
alpine-base
"linux-
$FLAVOR
"
linux-firmware
$PACKAGES
extra_pkgs dahdi-linux-
$FLAVOR
dahdi-linux
if
[
-z
"
$PACKAGES
"
]
;
then
extra_pkgs xtables-addons-
$FLAVOR
extra_pkgs
"dahdi-linux-
$FLAVOR
"
dahdi-linux
extra_pkgs
"xtables-addons-
$FLAVOR
"
fi
KVER
=
$(
ls
"
$ROOT
/lib/modules"
)
KVER_FLAVOR
=
depmod
-b
"
$ROOT
"
$KVER
[
"
$FLAVOR
"
=
vanilla
]
||
KVER_FLAVOR
=
-
$FLAVOR
KVER
=
$(
basename
$(
ls
-d
"
$ROOT
"
/lib/modules/
*
"
$KVER_FLAVOR
"
))
depmod
-b
"
$ROOT
"
"
$KVER
"
STAGING
=
$TMPDIR
/boot
STAGING
=
$TMPDIR
/boot
...
@@ -103,7 +135,8 @@ cp -a "$ROOT/lib/modules" "$MODLOOP"
...
@@ -103,7 +135,8 @@ cp -a "$ROOT/lib/modules" "$MODLOOP"
cp
-a
"
$ROOT
/lib/firmware"
"
$MODLOOP
/modules"
cp
-a
"
$ROOT
/lib/firmware"
"
$MODLOOP
/modules"
mksquashfs
"
$MODLOOP
"
"
$STAGING
/
$MODIMG
"
-comp
xz
mksquashfs
"
$MODLOOP
"
"
$STAGING
/
$MODIMG
"
-comp
xz
mkinitfs
-q
-F
"
$features
squashfs"
-b
"
$ROOT
"
-o
"
$STAGING
/
$FLAVOR
.gz"
$KVER
mkinitfs
-q
-b
"
$ROOT
"
-F
"
$features
base squashfs"
-o
"
$STAGING
/
$FLAVOR
.gz"
\
"
$KVER
"
cp
"
$ROOT
/boot/vmlinuz
$KVER_FLAVOR
"
"
$STAGING
/
$FLAVOR
"
cp
"
$ROOT
/boot/vmlinuz
$KVER_FLAVOR
"
"
$STAGING
/
$FLAVOR
"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment