Projects/KDE on Solaris/OpenSolaris/LiveCDHowTo: Difference between revisions

    From KDE TechBase
    m (Text replace - "<code>" to "<syntaxhighlight lang="text">")
    m (Text replace - "</code>" to "</syntaxhighlight>")
     
    Line 169: Line 169:




    (I use this oneliner to get all the KDE packages installed on my build system: <syntaxhighlight lang="text">pkginfo |grep ^KDE|sed s/^KDE4\ *//|grep -o ^KDE[^\ ]*|sed s/^/\<pkg\ name=\"/|sed s/\$/\"\\/\>/</code>
    (I use this oneliner to get all the KDE packages installed on my build system: <syntaxhighlight lang="text">pkginfo |grep ^KDE|sed s/^KDE4\ *//|grep -o ^KDE[^\ ]*|sed s/^/\<pkg\ name=\"/|sed s/\$/\"\\/\>/</syntaxhighlight>


    == Run the first phase, takes several hours ==
    == Run the first phase, takes several hours ==

    Latest revision as of 20:57, 29 June 2011

    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