Solaris/OpenSolaris/LiveCDHowTo

From KDE Community Wiki
Revision as of 20:57, 29 June 2011 by Neverendingo (talk | contribs) (Text replace - "</code>" to "</syntaxhighlight>")
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Follow this guide to create an OpenSolaris live DVD with KDE desktop. It assumes that you already have the packages in a local repository.

Make sure you have enough space

you'll need at least 12 GB, I add a 16 GB disk to my VirtualBox machine.

$ pfexec zpool create -f dpool c7d1s0
$ pfexec zpool import
$ zpool list
NAME    SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT
dpool  15.9G  74.5K  15.9G     0%  ONLINE  -
rpool  15.9G  12.3G  3.53G    77%  ONLINE  -

Install the distribution constructor

$ pfexec pkg install SUNWdistro-const

Modify the supplied config file

so that the local repo is added and KDE packages are added

$ cp /usr/share/distro_const/slim_cd/all_lang_slim_cd_x86.xml .
$ vi all_lang_slim_cd_x86.xml

a diff:

--- /usr/share/distro_const/slim_cd/all_lang_slim_cd_x86.xml	2009-08-08 16:57:07.500098872 +0200
+++ all_lang_slim_cd_x86.xml	2009-08-08 23:00:45.221631342 +0200
@@ -25,7 +25,7 @@
     live CD iso and usb image
 -->

-<distribution name="OpenSolaris">
+<distribution name="Korona 0.0.2">
 	<distro_constr_params>
 		<distro_constr_flags>
 			<!--
@@ -75,15 +75,12 @@
 		     If you want to use one or more  mirrors that are
 		     setup for the authority, specify the urls here.
 		-->
-		<!--
-		     Uncomment before using.
 		<pkg_repo_addl_authority>
 			<main
-				url=""
-				authname=""/>
+				url="http://localhost:10000"
+				authname="local"/>
 			<mirror url="" />
 		</pkg_repo_addl_authority>
-		-->
 		<!--
 		     The default preferred authority to be used by the system
 		     after it has been installed.
@@ -125,7 +122,7 @@
 		     is not a zfs dataset or mountpoint, checkpointing will not
 		     be enabled.
 		-->
-		<build_area>rpool/dc</build_area>
+		<build_area>dpool/dc</build_area>
 		<!--
 		     list of packages used to form the installed image
 		-->
@@ -144,11 +141,88 @@

 			    <pkg_name="[email protected]#/>
 			-->
-			<pkg name="entire"/>
 			<pkg name="SUNWcsd"/>
 			<pkg name="SUNWcs"/>
 			<pkg name="babel_install"/>
 			<pkg name="SUNWslim-utils"/>
+<pkg name="KDEl10n-ar"/>
+<pkg name="KDEl10n-bg"/>
+<pkg name="KDEl10n-bnIN"/>
+<pkg name="KDEl10n-ca"/>
+<pkg name="KDEl10n-cs"/>
+<pkg name="KDEl10n-csb"/>
+<pkg name="KDEl10n-da"/>
+<pkg name="KDEl10n-de"/>
+<pkg name="KDEl10n-el"/>
+<pkg name="KDEl10n-enGB"/>
+<pkg name="KDEl10n-es"/>
+<pkg name="KDEl10n-et"/>
+<pkg name="KDEl10n-eu"/>
+<pkg name="KDEl10n-fi"/>
+<pkg name="KDEl10n-fr"/>
+<pkg name="KDEl10n-ga"/>
+<pkg name="KDEl10n-gl"/>
+<pkg name="KDEl10n-gu"/>
+<pkg name="KDEl10n-he"/>
+<pkg name="KDEl10n-hi"/>
+<pkg name="KDEl10n-hne"/>
+<pkg name="KDEl10n-hu"/>
+<pkg name="KDEl10n-is"/>
+<pkg name="KDEl10n-it"/>
+<pkg name="KDEl10n-ja"/>
+<pkg name="KDEl10n-kk"/>
+<pkg name="KDEl10n-km"/>
+<pkg name="KDEl10n-kn"/>
+<pkg name="KDEl10n-ko"/>
+<pkg name="KDEl10n-ku"/>
+<pkg name="KDEl10n-lt"/>
+<pkg name="KDEl10n-lv"/>
+<pkg name="KDEl10n-mai"/>
+<pkg name="KDEl10n-mk"/>
+<pkg name="KDEl10n-ml"/>
+<pkg name="KDEl10n-mr"/>
+<pkg name="KDEl10n-nb"/>
+<pkg name="KDEl10n-nds"/>
+<pkg name="KDEl10n-nl"/>
+<pkg name="KDEl10n-nn"/>
+<pkg name="KDEl10n-pa"/>
+<pkg name="KDEl10n-pl"/>
+<pkg name="KDEl10n-pt"/>
+<pkg name="KDEl10n-ptBR"/>
+<pkg name="KDEl10n-ro"/>
+<pkg name="KDEl10n-ru"/>
+<pkg name="KDEl10n-sk"/>
+<pkg name="KDEl10n-sl"/>
+<pkg name="KDEl10n-sr"/>
+<pkg name="KDEl10n-sv"/>
+<pkg name="KDEl10n-tg"/>
+<pkg name="KDEl10n-th"/>
+<pkg name="KDEl10n-tr"/>
+<pkg name="KDEl10n-uk"/>
+<pkg name="KDEl10n-wa"/>
+<pkg name="KDEl10n-zhCN"/>
+<pkg name="KDEl10n-zhTW"/>
+<pkg name="KDEaccessibility"/>
+<pkg name="KDEadmin"/>
+<pkg name="KDEartwork"/>
+<pkg name="KDEbase-apps"/>
+<pkg name="KDEbase-runtime"/>
+<pkg name="KDEbase-workspace"/>
+<pkg name="KDEedu"/>
+<pkg name="KDEgames"/>
+<pkg name="KDEgdm-integration"/>
+<pkg name="KDEgraphics"/>
+<pkg name="KDEkonversation"/>
+<pkg name="KDElibs"/>
+<pkg name="KDElibs-experimental"/>
+<pkg name="KDEnetwork"/>
+<pkg name="KDEoxygen-icons"/>
+<pkg name="KDEpim"/>
+<pkg name="KDEpimlibs"/>
+<pkg name="KDEsdk"/>
+<pkg name="KDEtoys"/>
+<pkg name="KDEutils"/>
+<pkg name="KDEwebdev"/>
 		</packages>
 <!--
      Items below this line are rarely configured
@@ -182,10 +256,7 @@
 			    the first line of /etc/release will be used as
 			    the title for the grub menu
 			-->
-			<!--
-			    Uncomment before using
-			<title>Special Grub Title Text</title>
-			-->
+			<title>Korona 0.0.2</title>
 			<entry>
 				<title_suffix>Enable SSH</title_suffix>
 				<line>kernel$ /platform/i86pc/kernel/$ISADIR/unix -B livessh=enable</line>


(I use this oneliner to get all the KDE packages installed on my build system:

pkginfo |grep ^KDE|sed s/^KDE4\ *//|grep -o ^KDE[^\ ]*|sed s/^/\<pkg\ name=\"/|sed s/\$/\"\\/\>/

Run the first phase, takes several hours

$ pfexec distro_const build -p 1 all_lang_slim_cd_x86.xml

Remove the step_im-mod snapshot

$ zfs list -t snapshot
NAME                               USED  AVAIL  REFER  MOUNTPOINT
dpool/dc/build_data@empty             0      -    23K  -
dpool/dc/[email protected]_im-pop      0      -    23K  -
dpool/dc/[email protected]_im-mod  6.54M      -  5.05G  -
rpool/ROOT/opensolaris@install     150M      -  2.82G  -

$ pfexec zfs destroy dpool/dc/[email protected]_im-mod

Add a .dmrc file for jack, so that kde is the default session

$ pfexec vi /dpool/dc/build_data/pkg_image/jack/.dmrc
$ cat /dpool/dc/build_data/pkg_image/jack/.dmrc
[Desktop]
Session=kde
$ pfexec chown --reference=/dpool/dc/build_data/pkg_image/jack /dpool/dc/build_data/pkg_image/jack/.dmrc

Add some desktop icons

$ scp [email protected]:/tmp/KDE*  /dpool/dc/build_data/pkg_image/jack/Desktop/
$ scp [email protected]:/tmp/kde*  /dpool/dc/build_data/pkg_image/jack/Desktop/
$ pfexec chown --reference=/dpool/dc/build_data/pkg_image/jack /dpool/dc/build_data/pkg_image/jack/Desktop/KDE-Solaris-forum.desktop
$ pfexec chown --reference=/dpool/dc/build_data/pkg_image/jack /dpool/dc/build_data/pkg_image/jack/Desktop/kde-solaris.desktop

Create the step_im-mod snapshot again and proceed with the build

$ pfexec zfs snapshot dpool/dc/[email protected]_im-mod
$ pfexec distro_const build -r 1 all_lang_slim_cd_x86.xml

Wait few hours and pickup the iso