Difference between revisions of "Build Manjaro ISOs with buildiso"

imported>Excalibur1234
imported>Excalibur1234
Line 113: Line 113:
As you have probably noticed, most files and folders are only symlinks to the <code>shared</code> ISO profile. It is good practice to never change files or folders in the <code>shared</code> ISO profile. If you ever want to change them, first copy them to your ISO profile folder and delete the symlink.
As you have probably noticed, most files and folders are only symlinks to the <code>shared</code> ISO profile. It is good practice to never change files or folders in the <code>shared</code> ISO profile. If you ever want to change them, first copy them to your ISO profile folder and delete the symlink.


All
All folders and files specific to your ISO (in this example XFCE) are marked. You can change them to your liking.




==Modifying a ISO profile==
==Modifying an ISO profile==




===xfce-overlay===


You can adjust almost everything you want to change in your ISO (add packages or other files, adjust settings, etc.) in your profile folder located here:
The ''xfce-overlay'' folder looks like this (hidden files are not shown):


  manjaro-tools-iso-profiles/openbox/
  ├── etc
│   ├── lightdm
│   │   └── lightdm-gtk-greeter.conf
│   ├── mdm
│   │   └── custom.conf
│   └── '''skel'''
└── usr
    └── share
        ├── backgrounds
        │   └── lightdm
        │      └── manjaro-lightdm-gtk-greeter.jpg
        ├── icons
        │   └── default
        │      └── index.theme
        └── xfce4
            └── backdrops
                └── default.jpg -> /usr/share/backgrounds/manjaro.jpg


After the XFCE ISO has been successfully installed all files and folder in ''xfce-overlay'' folder get copied over to the installed system. This includes settings/config files but also themes and backgrounds/pictures.


There is one special folder (marked above):


manjaro-tools-iso-profiles/xfce/xfce-overlay/etc/skel


All files and folder in here will get copied to the home folder. Most hidden files their structure in <code>manjaro-tools-iso-profiles/xfce/xfce-overlay/etc/skel/</code> should be already familiar to you, because your home folder looks very similar to it.


If you want to know how the folder structure in your profile folder works, read:
* [https://wiki.manjaro.org/index.php?title=Manjaroiso#Understanding_ManjaroISO_Profiles this Wiki] (not the part about installing ''manjaroiso'')
* [https://wiki.manjaro.org/index.php?title=Manjaro-tools#Overview this Wiki section]


===profile.conf===


When reading about ''manjaroiso'' (either in the link given above or in other places), please note the differences between the old ''manjaroiso'' and the new ''manjaro-tools''. The most obvious are in your profile directory <code>manjaro-tools-iso-profiles/openbox</code>:
##########################################
###### use this file in the profile ######
##########################################
# possible values: openrc,systemd
initsys="systemd"
displaymanager="lightdm"
################ install ################
# unset defaults to given value
kernel="linux318"
# unset defaults to given value
# efi_boot_loader="grub"
# unset defaults to given value
# plymouth_theme=manjaro-elegant
# unset defaults to given values
# names must match systemd service names
# start_systemd=('bluetooth' 'cronie' 'ModemManager' 'NetworkManager' 'org.cups.cupsd' 'tlp' 'tlp-sleep')
...
 
This config file contains setting options. All default settings are commented. If you want to change them, uncomment them (remove the <code>#</code> symbol in front) and change it.
 
E.g. you can change the installed kernel and display manager. You can even autostart systemd services here.
 
 
===Packages-Xfce===
 
### Manjaro Packages
## XFCE Main Packages
ffmpegthumbnailer
gconf                    # fix qt-theme
gnome-keyring            # fix wlan segfault
gufw                    # firewall
# mdm-themes
accountsservice
lightdm-gtk-greeter
lightdm-gtk-greeter-settings
light-locker
manjaro-settings-manager
>i686 gcc
>x86_64 gcc-multilib
...
 
This file contains a list of package names, which will get installed on the your installed ISO (XFCE) and the LiveCD.
 
You can add or remove package names from this list as you like. You do not need to worry about dependencies when adding package names, just make sure the package name is spelled correctly and the package is available in the Manjaro repositories.
 
<code>#</code> marks a comment. The rest of the line after the <code>#</code> symbol gets ignored.
 
<code>>i686</code> marks a package, which will only get installed on the 32bit version of your ISO (XFCE).
 
<code>>x86_64</code> marks a package, which will only get installed on the 64bit version of your ISO (XFCE).
 
 
If you want to add AUR packages to your ISO, you need to create a local repository and add it to the corresponding <code>pacman-XXXXX.conf</code> file. Read here how to do it for ''manjaroiso'' (keep the changes between ''manjaroiso'' and ''manajro-tools'' in mind): [[How to install AUR packages in ManjaroISO]]
 
 
===Changes between ''manjaroiso'' and ''manajro-tools''===
 
When reading about ''manjaroiso'' (either in the links given on Wiki page or in other places), please note the differences between the old ''manjaroiso'' and the new ''manjaro-tools''. The most obvious are in your profile directory <code>manjaro-tools-iso-profiles/openbox</code>:
* these files are not present anymore: <code>isolinux</code>, <code>isomounts</code>, <code>syslinux</code>
* these files are not present anymore: <code>isolinux</code>, <code>isomounts</code>, <code>syslinux</code>
* the <code>options.conf</code> file has completely changed and its new equivalent is called <code>profile.conf</code>
* the <code>options.conf</code> file has completely changed and its new equivalent is called <code>profile.conf</code>
* the <code>pacman-i686.conf</code> and <code>pacman-x86_64.conf</code> files have been renamed to <code>pacman-default.conf</code> and <code>pacman-multilib.conf</code>. They are no longer required.
* the <code>pacman-i686.conf</code> and <code>pacman-x86_64.conf</code> files have been renamed to <code>pacman-default.conf</code> and <code>pacman-multilib.conf</code>. They are no longer required.
If you want to add AUR packages to your ISO, you need to create a local repository and add it to the corresponding <code>pacman-XXXXX.conf</code> file. Read here how to do it for ''manjaroiso'' (keep the changes between ''manjaroiso'' and ''manajro-tools'' in mind): [[How to install AUR packages in ManjaroISO]]


=manjaro-tools.conf=
=manjaro-tools.conf=