Build Your Own Remix with Fedora: Difference between revisions

Satellit (talk | contribs)
Satellit (talk | contribs)
 
(30 intermediate revisions by the same user not shown)
Line 7: Line 7:
: A 8GB USB is a minimum requirement.
: A 8GB USB is a minimum requirement.
: It is usually Cheaper to buy a 120GB or larger external USB Hard Drive and install fedora on it.
: It is usually Cheaper to buy a 120GB or larger external USB Hard Drive and install fedora on it.
:'''A Gnome Desktop install seems to work best. Link: [http://fedora.osuosl.org/linux/releases/13/Fedora/i386/iso/Fedora-13-i386-netinst.iso]'''




Line 19: Line 18:
  single-word command.  It would probably serve the targeted-project,
  single-word command.  It would probably serve the targeted-project,
  special-focus case.
  special-focus case.
=== Fedora Remix Info ===
=='''livemedia-creator'''==
*Newer method in f24
:https://jbwillia.wordpress.com/2014/10/29/how-to-build-updated-fedora-live-iso-for-yourself/
*Older post
:https://www.brianlane.com/creating-live-isos-with-livemedia-creator.html
*Examples in f24 root terminal:
 
*Must be done first:
:'''You must be in the same fedora version (f24) first.'''
setenforce 0
=== ksflatten ===
::build works: 05/26/2016 tg
 
*Link:
:https://pagure.io/fedora-kickstarts/tree/f24
 
::<dgilmore> satellit: I suggest that you tell people to git clone the repo and not get each piece manually
 
:Kickstarts need to flattened before use:
:: hit raw tab and '''save-page-as''' to a local directory (/home/(user)/Downloads/pagure.ks/)
 
:https://pagure.io/fedora-kickstarts/blob/f24/f/fedora-live-soas.ks
:https://pagure.io/fedora-kickstarts/blob/f24/f/fedora-live-base.ks
:https://pagure.io/fedora-kickstarts/blob/f24/f/fedora-live-minimization.ks
:https://pagure.io/fedora-kickstarts/blob/f24/f/fedora-repo.ks
:https://pagure.io/fedora-kickstarts/blob/f24/f/fedora-repo-not-rawhide.ks
:https://pagure.io/fedora-kickstarts/blob/f24/f/fedora-repo-rawhide.ks
:https://pagure.io/fedora-kickstarts/blob/f24/f/fedora-soas-packages.ks
 
*switch root terminal to the local directory with the kickstart files (/home/(user)/Downloads/pagure.ks/)
 
ksflatten -v, --config fedora-live-soas.ks -o flat-fedora-live-soas.ks --version F24
 
livemedia-creator --ks /home/(user)/Downloads/pagure.ks/flat-fedora-live-soas.ks  --logfile /tmp/lmc-logs/livemedia-out.log --no-virt --resultdir /tmp/lmc --project Fedora-soas-Live --make-iso --volid Fedora-SoaS-flat-live --iso-only --iso-name Fedora-SoaS-flat-live.iso --releasever 24 --title Fedora-SoaS-flat-live --macboot
 
=== Make a remix ===
*edit the bottom of the flat-fedora-live-soas.ks
:in this section
%packages
:add a program  (add name)
:'''-''' delete a program ( put - in front)
:put '''#''' in front of listed program to not install it
 
 
:Build takes a long time wait for completion
:ends with:
..........clip........
..........clip........
2016-05-17 16:16:16,110: Disk Image install successful
2016-05-17 16:16:16,110: working dir is /var/tmp/lmc-work-rilyz2bm
2016-05-17 16:27:38,448: Rebuilding initrds
2016-05-17 16:27:38,448: dracut args = ['--xz', '--add', 'livenet dmsquash-live convertfs pollcdrom qemu qemu-net', '--omit', 'plymouth', '--no-hostonly', '--debug', '--no-early-microcode']
2016-05-17 16:27:38,449: rebuilding boot/initramfs-4.5.3-300.fc24.x86_64.img
2016-05-17 16:29:15,724: Building boot.iso
2016-05-17 16:29:15,784: running x86.tmpl
2016-05-17 16:29:48,959: Disk image erased
2016-05-17 16:29:49,377: SUMMARY
2016-05-17 16:29:49,377: -------
2016-05-17 16:29:49,377: Logs are in /tmp/lmc-logs
2016-05-17 16:29:49,377: Results are in /tmp/lmc
 
===Retrieve finished live.iso===
"Results are in /tmp/lmc"
*start files application
*click on '''Files system'''
:open  temp folder
:open lmc folder
*click on  the '''.....iso''' you just built
'''copy to''' (mouse right click) '''Home''' with files application
*Check that it is in Home
===Clean Up===
:delete the instance in /tmp
:delete the /tmp directory  (cannot run new build unless this is done?)
 
[root@localhost lmc]#
[root@localhost lmc]# cd ..
[root@localhost tmp]# rm -r lmc
rm: descend into directory 'lmc'? y
rm: remove regular file 'lmc/Fedora-LUCwks-20160524.iso'? y
rm: remove directory 'lmc'? y
[root@localhost tmp]#
 
 
== Fedora Remix Info ==
:https://fedoraproject.org/wiki/Remix
:https://fedoraproject.org/wiki/Remix
*Important Info and links
*Important Info and links
Line 27: Line 109:
* AND
* AND
'''FedoraQA Creating_a_Test_Day_Live_Image: https://fedoraproject.org/wiki/QA/Test_Days/Live_Image#Creating_a_Test_Day_Live_Image'''
'''FedoraQA Creating_a_Test_Day_Live_Image: https://fedoraproject.org/wiki/QA/Test_Days/Live_Image#Creating_a_Test_Day_Live_Image'''
*Other Important links:
::3/11/2014
:https://fedoraproject.org/wiki/How_to_create_and_use_a_Live_CD?rd=How_to_create_and_use_Fedora_Live_CD
:https://fedoraproject.org/wiki/How_to_create_a_Fedora_install_ISO_for_testing?rd=How_to_build_a_Rawhide_ISO_image_for_testing#Build_a_boot.iso


=== Introduction ===
== Introduction ==
*Complete Reference on Fedora [https://fedoraproject.org/wiki/Anaconda/Kickstart Anaconda Kickstart]
*Complete Reference on Fedora [https://fedoraproject.org/wiki/Anaconda/Kickstart Anaconda Kickstart]


Line 53: Line 139:


==== Install the necessary software ====
==== Install the necessary software ====
=====git spin-kickstarts=====
::Updated Sept 5,2013  Works from a f20 alpha TC4 x86_64 Desktop HD install with anaconda 20.10-1 (liveinst) using custom partitioning /boot 500 mb / 800 GB (Anaconda is still unstable)
:https://git.fedorahosted.org/cgit/spin-kickstarts.git/
:F19:https://git.fedorahosted.org/cgit/spin-kickstarts.git/log/?h=f19
:Latest spin-kickstarts used for composes of live cd's
::'''F19 Use instead of the spin-kickstarts downloaded by the instructions listed below.'''
::spin-kickstarts ususally are not up to date.


To create a live image, the '''livecd-creator''' tool is used. Super user privileges are needed. The tool is more or less self-documenting, use the ''--help'' option to see options.
To create a live image, the '''livecd-creator''' tool is used. Super user privileges are needed. The tool is more or less self-documenting, use the ''--help'' option to see options.
Line 66: Line 145:


  su -c 'yum install livecd-tools spin-kickstarts'
  su -c 'yum install livecd-tools spin-kickstarts'
*'''https://git.fedorahosted.org/git/spin-kickstarts.git'''
:latest spin.ks files


If you are interested in localized live cd files, install also '''l10n-kickstarts'''.
If you are interested in localized live cd files, install also '''l10n-kickstarts'''.
Line 82: Line 165:
::f19 0.98.7-
::f19 0.98.7-
::f20 0.99. -
::f20 0.99. -
::f21 0.102.x -
::f22
::f23
::f24 0.108.x -


==== Set up your environment ====
==== Set up your environment ====
Line 99: Line 186:
  cp /usr/share/spin-kickstarts/*.ks /home/(user*)/spin-kickstarts/
  cp /usr/share/spin-kickstarts/*.ks /home/(user*)/spin-kickstarts/
  cd /home/(user*)/spin-kickstarts/
  cd /home/(user*)/spin-kickstarts/
=====[http://git.fedorahosted.org/cgit/spin-kickstarts.git/ spin-kickstarts.git]=====
 
=====ksflatten=====
*program to convert kickstart files into one file
*install:
  dnf install /usr/bin/ksflatten
KSFLATTEN(1)                          General Commands Manual                          KSFLATTEN(1)
 
NAME
      ksflatten — flatten a kickstart file
 
SYNOPSIS
      ksflatten [-c | --config INFILE]  [-o | --output OUTFILE]  [-v | --version VERSION]
 
DESCRIPTION
      ksflatten is a program that takes an input kickstart file potentially containing includes and
      generates an output file with all the includes inlined.
 
EXIT STATUS
      ksflatten returns 0 on success, and 1 if INFILE does not exist or there is an  error  parsing
      the kickstart file.
 
OPTIONS
      -c, --config INFILE
                The name of the input kickstart file.
 
      -o, --output OUTFILE
                Write the flattened kickstart file to OUTFILE, or stdout if no filename is given.
 
      -v, --version VERSION
 
======Examples======
# /Downloads/spin-kickstarts
ksflatten -v, --config fedora-livecd-soas.ks -o flat-fedora-livecd-soas.ks --version F21
 
=====git spin-kickstarts=====
::Updated 11/09/2014
:https://git.fedorahosted.org/cgit/spin-kickstarts.git/
:'''https://git.fedorahosted.org/cgit/spin-kickstarts.git/tree/?h=f21'''
::'''Recommended for most up to date xxx.ks'''
:Latest spin-kickstarts used for composes of live cd's
 
::Downloaded spin-kickstarts usually are not up to date.
*These are more up to date kickstart files-(used for builds)
*These are more up to date kickstart files-(used for builds)
:Index: http://git.fedorahosted.org/cgit/spin-kickstarts.git/
:Index: http://git.fedorahosted.org/cgit/spin-kickstarts.git/
:Unzip this file : F18: http://git.fedorahosted.org/cgit/spin-kickstarts.git/snapshot/spin-kickstarts-f18.zip
:Unzip latest file  
:Use these kick-start files as shown in the above example.
:Use these kick-start files as shown in the above example.
:Be sure to not mix them with the files we added to /spin-kickstarts
:Be sure to not mix them with the files we added to /spin-kickstarts
Line 110: Line 238:
:see (section below for details of what you can do)
:see (section below for details of what you can do)


====Masher .ks files====
*use the flattened (one file) .ks file for the latest koji builds:
:http://koji.fedoraproject.org/koji/tasks?start=0&state=all&view=flat&method=createLiveCD&order=-id
::Click on the green (successful) build listed on this page and download the xxxx.ks listed below the xxxx.iso link
::Save this to  /home/(user)/spin-kickstarts/ 
::Link to this after you adjust the xxx.ks for your needs (see below)
====[https://fedoraproject.org/wiki/QA:Testcase_Kickstart_File_Path_Ks_Cfg Add a xxx.ks file in Anaconda]====
"This test will verify that anaconda can load a kickstart file from a file:// path. This is a typical case for when the kickstart file is located in the initrd.img."
====Example Terminal Command to Build .iso ====
====Example Terminal Command to Build .iso ====


Line 121: Line 257:


*'''KEY'''
*'''KEY'''
: --fslabel=Soas-v(2-11)-Remix-mmddyr = (The name you specify for the CD remix)
: --fslabel=Soas-v(2-14)-Remix-mmddyr = (The name you specify for the CD remix)


:: Explanation of format for name:  (preliminary layout pending approval by Soas)
:: Explanation of format for name:  (preliminary layout pending approval by Soas)
Line 133: Line 269:
:::: v8= Fedora 18 sugar 0.98.x
:::: v8= Fedora 18 sugar 0.98.x
:::: v10=Fedora 20 sugar 0.99.x
:::: v10=Fedora 20 sugar 0.99.x
:::: v11=Fedora 21 sugar 0100.x (rawhide)
:::: v11=Fedora 21 sugar 0102.x  
:::: v12=Fedora 22 sugar 0102.x
:::: v13=Fedora 23 sugar 0104.x
:::: v14=Fedora 24 sugar 0106.x
 
 
:::: mmddyr= The Creation Date
:::: mmddyr= The Creation Date
:: '''Remix is REQUIRED for naming if Soas is used'''
:: '''Remix is REQUIRED for naming if Soas is used'''
Line 285: Line 426:
::An alternative approach
::An alternative approach
* [[Sugar on a Stick/Customization]]
* [[Sugar on a Stick/Customization]]
*http://fedoraproject.org/wiki/Anaconda/Kickstart
*'''http://fedoraproject.org/wiki/Anaconda/Kickstart'''


=====Older Anaconda Kickstart Links=====
=====Older Anaconda Kickstart Links=====
Line 308: Line 449:
*http://spins.fedoraunity.org/team-documentation/composing-spins/doing-the-work
*http://spins.fedoraunity.org/team-documentation/composing-spins/doing-the-work
====spin-kickstarts.git====
====spin-kickstarts.git====
*https://pagure.io/fedora-kickstarts/tree/f24
:New
*http://git.fedorahosted.org/git/?p=spin-kickstarts.git;a=tree;hb=HEAD
*http://git.fedorahosted.org/git/?p=spin-kickstarts.git;a=tree;hb=HEAD
:Older depreciated


===Dextrose XO-1 & XO-1.5===
===Dextrose XO-1 & XO-1.5===
* [[Dextrose/Building]]
* [[Dextrose/Building]]


===Fedora Licensing===
===Licensing===
*http://fedoraproject.org/wiki/Licensing
*http://fedoraproject.org/wiki/Licensing
*http://opensource.org/licenses/lgpl-license
:How to label the license for your VirtualBox exports and Remixed .iso's


===Using KIWI with openSUSE to Customize===
===Using KIWI with openSUSE to Customize===