added chakra-live packages

This commit is contained in:
Fabian Kosmale 2014-03-23 15:31:58 +00:00
parent 54e9b0f73a
commit 2d7a5ae040
29 changed files with 656 additions and 6 deletions

6
.gitignore vendored
View File

@ -1,5 +1,3 @@
.gitignore
_buildscripts
_repo
_sources
@ -13,9 +11,6 @@ build.sh
clean-builddir.sh
clean-workdir.sh
copy.sh
copy-any.sh
fakeuname
get-any.sh
makepkg
move.sh
pkgrels-decrease.sh
@ -36,7 +31,6 @@ recreate-database.sh
upload.sh
upload-nodb.sh
unlock-database.sh
unlock-repo.sh
*-cfg.conf
*-makepkg.conf

View File

@ -0,0 +1,32 @@
#
# Core Packages for Chakra, part of chakra-project.org
#
pkgname=chakra-live-initcpio
pkgver=1.0
pkgrel=1
pkgdesc="mkinitcpio hooks required for the live ISO"
arch=('x86_64')
url="http://www.archlinux.org/"
license=('GPL')
depends=('mkinitcpio')
source=("mkinitcpio.tar.gz")
install=chakra-live-initcpio.install
md5sums=('d500f8de8be0817f5d2a98cbd1dd7e4d')
package() {
cd ${srcdir}/mkinitcpio
install -Dm 644 mkinitcpio.conf ${pkgdir}/etc/mkinitcpio-live.conf
msg "Installing hooks..."
install -Dm 755 -d ${pkgdir}/usr/lib/initcpio/hooks
for f in ./hooks/*; do \
echo $f
install -Dm 644 -t ${pkgdir}/usr/lib/initcpio/hooks $f; \
done
msg "Installing install files..."
install -Dm 755 -d ${pkgdir}/usr/lib/initcpio/install
for f in ./install/*; do \
echo $f
install -Dm 644 -t ${pkgdir}/usr/lib/initcpio/install $f; \
done
}

View File

@ -0,0 +1,5 @@
post_install() {
mkinitcpio -c /etc/mkinitcpio-live.conf -g /boot/chakraiso.img
}
# vim: set syntax=sh:

View File

@ -0,0 +1,162 @@
# args: source, mountpoint
_mnt_aufs() {
local src="${1}"
local mnt="${2}"
msg "::: Adding new aufs branch: ${src} to ${mnt}"
mkdir -p "${mnt}"
/bin/mount -t aufs -o remount,append:"${src}"=ro none "${mnt}"
}
# args: source, mountpoint
_mnt_bind() {
local src="${1}"
local mnt="${2}"
msg "::: Binding ${src} to ${mnt}"
mkdir -p "${mnt}"
/bin/mount -o bind "${src}" "${mnt}"
}
# args: /path/to/image_file, mountpoint
_mnt_squashfs() {
local img="${1}"
local mnt="${2}"
local img_fullname="${img##*/}";
local img_name="${img_fullname%.*}"
local tmp_mnt="/ro_branch/${img_name}"
if [ "${copytoram}" = "y" ]; then
msg -n ":: Copying squashfs image to RAM..."
/bin/cp "${img}" "/copytoram/${img_fullname}"
if [ $? -ne 0 ]; then
echo "ERROR: while copy ${img} to /copytoram/${img_fullname}"
launch_interactive_shell
fi
img="/copytoram/${img_fullname}"
msg "done."
fi
mkdir -p "${tmp_mnt}"
/bin/mount -r -t squashfs "${img}" "${tmp_mnt}"
if [ $? -ne 0 ]; then
echo "ERROR: while mounting ${img} to ${tmp_mnt}"
launch_interactive_shell
fi
if [ "/${mnt#/*/}" = "/" ]; then
_mnt_aufs "${tmp_mnt}" "${mnt}"
else
_mnt_bind "${tmp_mnt}" "${mnt}"
fi
}
run_hook() {
modprobe loop
if [ "x${arch}" = "x" ]; then
arch="$(uname -m)"
fi
if [ "x${rw_branch_size}" = "x" ]; then
rw_branch_size="75%"
fi
if [ "x${copytoram_size}" = "x" ]; then
copytoram_size="75%"
fi
if [ "x${chakraisobasedir}" = "x" ]; then
chakraisobasedir="chakra"
fi
if [ "x${isomounts}" != "x" ]; then
isomounts="/bootmnt/${isomounts}"
else
isomounts="/bootmnt/${chakraisobasedir}/isomounts"
fi
if [ "x${chakraisodevice}" = "x" ]; then
chakraisodevice="/dev/disk/by-label/${chakraisolabel}"
fi
# set mount handler for chakraiso
mount_handler="chakraiso_mount_handler"
}
chakraiso_mount_handler() {
local newroot="${1}"
msg ":: Waiting for boot device..."
while ! poll_device ${chakraisodevice} 30; do
echo "ERROR: boot device didn't show up after 30 seconds..."
echo " Falling back to interactive prompt"
echo " You can try to fix the problem manually, log out when you are finished"
launch_interactive_shell
done
FSTYPE=$(blkid -o value -s TYPE -p ${chakraisodevice} 2> /dev/null)
#FSTYPE="iso9660"
if [ -n "${FSTYPE}" ]; then
echo ":: cid was ${chakraisodevice}"
if mount -r -t "${FSTYPE}" ${chakraisodevice} /bootmnt > /dev/null 2>&1; then
if [ -e "${isomounts}" ]; then
echo ":: Mounted chakraiso volume successfully."
fserror="0"
else
echo "ERROR: Mounting was successful, but the ${isomounts} file does not exist."
fserror="1"
fi
else
echo "ERROR; Failed to mount ${chakraisodevice} (FS is ${FSTYPE})"
fserror="1"
fi
else
echo "ERROR: ${chakraisodevice} found, but the filesystem type is unknown."
fserror="1"
fi
if [ "${fserror}" = "1" ]; then
echo " Falling back to interactive prompt"
echo " You can try to fix the problem manually, log out when you are finished"
launch_interactive_shell
fi
if [ "${copytoram}" = "y" ]; then
msg -n ":: Mounting /copytoram (tmpfs) filesystem, size=${copytoram_size}..."
mount -t tmpfs -o "size=${copytoram_size}",mode=0755 copytoram /copytoram
msg "done."
fi
msg -n ":: Mounting rw_branch (tmpfs) filesystem, size=${rw_branch_size}..."
mount -t tmpfs -o "size=${rw_branch_size}",mode=0755 rw_branch /rw_branch
msg "done."
msg ":: Mounting root (aufs) filesystem"
/bin/mount -t aufs -o dirs=/rw_branch=rw union "${newroot}"
if [ $? -ne 0 ]; then
echo "ERROR: while mounting root (aufs) filesystem."
launch_interactive_shell
fi
msg ":: Mounting images"
while read img imgarch mountpoint type; do
# check if this line is a comment (starts with #)
[ "${img#"#"}" != "${img}" ] && continue
[ "$imgarch" != "$arch" ] && continue
[ ! -r "/bootmnt/${chakraisobasedir}/${img}" ] && continue
if [ "${type}" = "bind" ]; then
_mnt_bind "/bootmnt/${chakraisobasedir}/${img}" "${newroot}${mountpoint}"
elif [ "${type}" = "squashfs" ]; then
_mnt_squashfs "/bootmnt/${chakraisobasedir}/${img}" "${newroot}${mountpoint}"
fi
done < "${isomounts}"
if [ "${copytoram}" = "y" ]; then
/bin/umount /bootmnt
else
_mnt_bind /bootmnt "${newroot}/bootmnt"
fi
}
# vim:ft=sh:ts=4:sw=4:et:

View File

@ -0,0 +1,37 @@
# vim: set ft=sh:
run_hook () {
if [ -n "${img_dev}" ] && [ -n "${img_loop}" ]; then
mount_handler="chakraiso_loop_mount_handler"
fi
}
chakraiso_loop_mount_handler () {
newroot="${1}"
msg ":: Waiting for boot device..."
while ! poll_device ${img_dev} 30; do
echo "ERROR: boot device didn't show up after 30 seconds..."
echo " Falling back to interactive prompt"
echo " You can try to fix the problem manually, log out when you are finished"
launch_interactive_shell
done
msg "::: Setup a loop device from ${img_loop} located at device ${img_dev}"
FSTYPE=$(blkid -o value -s TYPE -p ${img_dev} 2> /dev/null)
if [ -n "${FSTYPE}" ]; then
if mount -r -t "${FSTYPE}" ${img_dev} /img_dev > /dev/null 2>&1; then
_dev_loop=$(losetup -f)
losetup ${_dev_loop} /img_dev/${img_loop}
fi
fi
chakraiso_mount_handler ${newroot}
if [ "${copytoram}" = "y" ]; then
msg "::: Deataching loop device ${_dev_loop}"
losetup -d ${_dev_loop}
msg "::: Unmounting ${img_dev}"
umount ${img_dev}
fi
}

View File

@ -0,0 +1,90 @@
# vim: set ft=sh:
run_hook () {
local line i address netmask gateway dns0 dns1 rootserver rootpath filename
: > /ip_opts
if [ -n "${ip}" ]; then
if [ -n "${BOOTIF}" ]; then
bootif_mac=${BOOTIF#01-}
bootif_mac=${bootif_mac//-/:}
bootif_dev=$(grep -l $bootif_mac /sys/class/net/*/address)
bootif_dev=${bootif_dev#/sys/class/net/}
bootif_dev=${bootif_dev%/address}
ip="$ip::$bootif_dev"
fi
# setup network and save some values
ipconfig "ip=${ip}" | while read line; do
# echo ":: ${line}"
if [ "${line#"IP-Config:"}" != "${line}" ]; then
continue
fi
line="$(echo ${line} | sed -e 's/ :/:/g;s/: /=/g')"
for i in ${line}; do
case "${i}" in
address=*)
echo "${i}" >> /ip_opts
;;
netmask=*)
echo "${i}" >> /ip_opts
;;
gateway=*)
echo "${i}" >> /ip_opts
;;
dns0=*)
echo "${i}" >> /ip_opts
;;
dns1=*)
echo "${i}" >> /ip_opts
;;
rootserver=*)
echo "${i}" >> /ip_opts
;;
rootpath=*)
echo "${i}" >> /ip_opts
;;
esac
done
done
. /ip_opts
echo "IP-Config: ${address}/${netmask}"
echo "IP-Config: gw: ${gateway} dns0: ${dns0} dns1: ${dns1}"
nbdserver=${rootserver}
mount_handler="chakraiso_pxe_nbd_mount_handler"
fi
}
chakraiso_pxe_nbd_mount_handler () {
newroot="${1}"
# Module autoloading like with loop devices does not work, doing manually...
modprobe nbd 2> /dev/null
msg ":: Waiting for boot device..."
while ! poll_device /dev/nbd0 30; do
echo "ERROR: boot device didn't show up after 30 seconds..."
echo " Falling back to interactive prompt"
echo " You can try to fix the problem manually, log out when you are finished"
launch_interactive_shell
done
msg "::: Setup NBD from ${nbdserver} at /dev/nbd0"
if [ "${copytoram}" = "y" ]; then
nbd-client ${nbdserver} -N chakraiso /dev/nbd0
else
nbd-client ${nbdserver} -N chakraiso /dev/nbd0 -persist
fi
chakraisodevice=/dev/nbd0
chakraiso_mount_handler ${newroot}
if [ "${copytoram}" = "y" ]; then
msg "::: Disconnect NBD from ${nbdserver} at /dev/nbd0"
nbd-client -d /dev/nbd0
fi
}

View File

@ -0,0 +1,28 @@
#!/bin/bash
build() {
add_module "cdrom"
add_module "aufs"
add_module "squashfs"
add_module "isofs"
add_module "loop"
add_module "usb_storage"
add_module "sd_mod"
add_module "sr_mod"
add_module "virtio_pci"
add_module "virtio_blk"
add_dir /rw_branch
add_dir /ro_branch
add_dir /copytoram
add_dir /bootmnt
add_runscript
add_binary /usr/lib/udev/cdrom_id
add_binary blockdev
add_binary losetup
add_binary mountpoint
add_file /usr/lib/udev/rules.d/60-cdrom_id.rules
}

View File

@ -0,0 +1,16 @@
#!/bin/bash
build() {
add_module "radeon"
add_module "nouveau"
add_module "i915"
add_module "via-agp"
add_module "sis-agp"
add_module "intel-agp"
}
help() {
cat << HELPEOF
Adds all common KMS drivers to the initramfs image.
HELPEOF
}

View File

@ -0,0 +1,12 @@
#!/bin/bash
build() {
add_runscript
}
help ()
{
cat<<HELPEOF
This hook loads the necessary modules for boot via loop device.
HELPEOF
}

View File

@ -0,0 +1,16 @@
#!/bin/bash
build() {
add_module "nbd"
add_runscript
add_binary nbd-client
}
help ()
{
cat<<HELPEOF
This hook loads the necessary modules for boot via PXE and NBD.
HELPEOF
}

View File

@ -0,0 +1,7 @@
MODULES="udf"
BINARIES=""
FILES=""
HOOKS="base udev block autodetect chakraiso chakraiso_pxe_nbd chakraiso_loop_mnt chakraiso_kms pcmcia keymap filesystems "
COMPRESSION="xz"
# vim: set ft=sh:

21
chakra-live-skel/PKGBUILD Normal file
View File

@ -0,0 +1,21 @@
#
# Core Packages for Chakra, part of chakra-project.org
#
pkgname=chakra-live-skel
pkgver=1.0
pkgrel=1
pkgdesc="The inital user configuration of a Chakra system"
arch=('x86_64')
url="http://www.archlinux.org/"
license=('GPL')
source=("skel.tar.gz")
md5sums=('ac84be7618e02f22f4e975770765a960')
package() {
cd ${srcdir}/skel
for folder in ./*; do \
cp -a $folder ${pkgdir}; \
done
chmod 750 ${pkgdir}/etc/sudoers.d/
}

View File

@ -0,0 +1,7 @@
#
# /etc/hosts.deny
#
# ALL: ALL: DENY
# End of file

View File

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xbel>
<xbel version="1.0" dbusName="rekonq">
<bookmark href="http://www.chakra-project.org/">
<title>The Chakra Project</title>
<info>
<metadata owner="http://freedesktop.org">
<bookmark:icon name="chakra-smooth"/>
</metadata>
</info>
</bookmark>
<bookmark href="http://chakra-project.org/wiki/index.php?title=Main_Page">
<title>Documentation</title>
<info>
<metadata owner="http://freedesktop.org">
<bookmark:icon name="system-help"/>
</metadata>
</info>
</bookmark>
<bookmark href="http://webchat.freenode.net/?channels=chakra">
<title>IRC</title>
<info>
<metadata owner="http://freedesktop.org">
<bookmark:icon name="system-help"/>
</metadata>
</info>
</bookmark>
</xbel>

View File

@ -0,0 +1,2 @@
[Kate Document Defaults]
Line Length Limit=3000

View File

@ -0,0 +1,3 @@
[General]
dontChangeAASettings=false
forceFontDPI=0

View File

@ -0,0 +1,118 @@
[$Version]
update_info=kwin.upd:kde3.2Xinerama,kded.upd:kde3.0
[ColorEffects:Disabled]
Color=56,56,56
ColorAmount=0
ColorEffect=0
ContrastAmount=0.65
ContrastEffect=1
IntensityAmount=0.1
IntensityEffect=2
[ColorEffects:Inactive]
ChangeSelectionColor=true
Color=112,111,110
ColorAmount=0.025
ColorEffect=2
ContrastAmount=0.1
ContrastEffect=2
Enable=false
IntensityAmount=0
IntensityEffect=0
[Colors:Button]
BackgroundAlternate=224,223,222
BackgroundNormal=201,203,205
DecorationFocus=126,165,190
DecorationHover=84,136,171
ForegroundActive=239,154,242
ForegroundInactive=137,136,135
ForegroundLink=0,87,174
ForegroundNegative=191,3,3
ForegroundNeutral=235,129,53
ForegroundNormal=27,25,24
ForegroundPositive=0,110,40
ForegroundVisited=100,74,155
[Colors:Selection]
BackgroundAlternate=62,138,204
BackgroundNormal=28,120,190
DecorationFocus=126,165,190
DecorationHover=84,136,171
ForegroundActive=239,154,242
ForegroundInactive=165,193,228
ForegroundLink=0,49,110
ForegroundNegative=156,14,14
ForegroundNeutral=255,221,0
ForegroundNormal=251,251,251
ForegroundPositive=128,255,128
ForegroundVisited=69,40,134
[Colors:Tooltip]
BackgroundAlternate=196,224,255
BackgroundNormal=29,29,29
DecorationFocus=126,165,190
DecorationHover=84,136,171
ForegroundActive=239,154,242
ForegroundInactive=48,48,48
ForegroundLink=0,87,174
ForegroundNegative=191,3,3
ForegroundNeutral=235,129,53
ForegroundNormal=251,251,251
ForegroundPositive=32,110,64
ForegroundVisited=100,74,155
[Colors:View]
BackgroundAlternate=248,247,246
BackgroundNormal=247,247,247
DecorationFocus=126,165,190
DecorationHover=84,136,171
ForegroundActive=239,154,242
ForegroundInactive=137,136,135
ForegroundLink=0,87,174
ForegroundNegative=191,3,3
ForegroundNeutral=235,129,53
ForegroundNormal=29,29,29
ForegroundPositive=0,110,40
ForegroundVisited=100,74,155
[Colors:Window]
BackgroundAlternate=218,217,216
BackgroundNormal=201,201,202
DecorationFocus=126,165,190
DecorationHover=84,136,171
ForegroundActive=239,154,242
ForegroundInactive=137,136,135
ForegroundLink=0,87,174
ForegroundNegative=191,3,3
ForegroundNeutral=235,129,53
ForegroundNormal=27,25,24
ForegroundPositive=0,110,40
ForegroundVisited=100,74,155
[General]
ColorScheme=Caledonia 6
XftAntialias=true
XftHintStyle=hintslight
XftSubPixel=rgb
desktopFont=DejaVu Sans,9,-1,5,50,0,0,0,0,0
fixed=Monospace,9,-1,5,50,0,0,0,0,0
font=DejaVu Sans,9,-1,5,50,0,0,0,0,0
menuFont=DejaVu Sans,9,-1,5,50,0,0,0,0,0
shadeSortColumn=true
smallestReadableFont=DejaVu Sans,8,-1,5,50,0,0,0,0,0
taskbarFont=DejaVu Sans,9,-1,5,50,0,0,0,0,0
toolBarFont=DejaVu Sans,8,-1,5,50,0,0,0,0,0
[KDE]
contrast=7
[WM]
activeBackground=36,36,36
activeBlend=251,251,251
activeFont=DejaVu Sans,8,-1,5,50,0,0,0,0,0
activeForeground=251,251,251
inactiveBackground=224,223,222
inactiveBlend=48,48,48
inactiveForeground=48,48,48

View File

@ -0,0 +1,2 @@
[Favorites]
FavoriteURLs=/usr/share/applications/kde4/rekonq.desktop,/usr/share/applications/kde4/dolphin.desktop,/usr/share/applications/kde4/kate.desktop,/usr/share/applications/oktopi.desktop,/usr/share/applications/kde4/systemsettings.desktop,/usr/share/applications/kde4/konsole.desktop

View File

@ -0,0 +1,3 @@
[KSplash]
Engine=KSplashQML
Theme=Dharma

View File

@ -0,0 +1,11 @@
[$Version]
update_info=kuriikwsfilter.upd:post-kde3.1/cvs
[General]
DefaultSearchEngine=duckduckgo
DefaultWebShortcut=duckduckgo
EnableWebShortcuts=true
FavoriteSearchEngines=youtube,duckduckgo,yahoo,google,wikipedia,wikit
PreferredWebShortcuts=youtube,duckduckgo,yahoo,google,wikipedia,wikit
KeywordDelimiter=:
UseSelectedProvidersOnly=true

View File

@ -0,0 +1,2 @@
[General]
Autostart=false

View File

@ -0,0 +1,6 @@
[InactiveShadow]
Size=53
VerticalOffset=0.3
[Windeco]
UseOxygenShadows=false

View File

@ -0,0 +1,5 @@
[$Version]
update_info=plasma_popupapplet_fix_groups.upd:PlasmaPopupAppletFixGroups2
[Theme]
name=caledonia

View File

@ -0,0 +1,15 @@
[General]
homePage=http://www.chakra-project.org/welcome.html
startupBehaviour=0
[MainWindow][Toolbar MainToolBar]
ToolButtonStyle=IconOnly
[NewTabPage]
previewNames=The Chakra Project,Forums,YouTube-html5
previewUrls=http://www.chakra-project.org,http://www.chakra-project.org/bbs,http://www.youtube.com/html5
[Webkit]
pluginsEnabled=1
spatialNavigation=true
webGL=true

View File

@ -0,0 +1,9 @@
[Desktop Entry]
DefaultProfile=Shell.profile
[Dialogs]
FirstRun=false
ShowPopup=false
[Favorite Profiles]
Favorites=/usr/share/apps/konsole/Shell.profile

View File

@ -0,0 +1,7 @@
[Added Associations]
application/xhtml+xml=rekonq.desktop;
text/plain=kde4-kate.desktop;writer.desktop;
text/x-cmake=kde4-kate.desktop;writer.desktop;
text/x-txt2tags=kde4-kate.desktop;writer.desktop;
text/html=rekonq.desktop;
text/xml=rekonq.desktop;

View File

@ -0,0 +1,8 @@
[Desktop Entry]
Charset=
Hidden=false
Keys=duckduckgo,dd,dukgo
Name=Duck Duck Go
Query=http://duckduckgo.com/?q=\\{@}&t=chakra
ServiceTypes=SearchProvider
Type=Service

View File

@ -0,0 +1 @@
%wheel ALL=(ALL) NOPASSWD: ALL

View File

@ -0,0 +1,3 @@
[Icon Theme]
Name = Oxygen White
Inherits = Oxygen_White