Forum

Bildirimler
Tümünü temizle

[NASIL] ManjaroISO Kullanarak Kalıp Hazırlama Yöntemleri.

1 Yazılar
1 Üyeler
0 Reactions
3,212 Görüntüleme
(@yfdogan)
Gönderiler: 615
Prominent Member
Konu başlatıcı
 
[#266]

ManjaroISO

ManjaroISO Nedir?

ManjaroISO, Manjaro temelli kurulum ortamı, canlı ortam oluşturabileceğiniz basit bir uygulamadır. Sistem kurtarma, işletim sisteminizi yükleme, kendi istek ve ihtiyaçlarınız doğrultusunda kişiselleştirebileceğiniz Kurulum / Kurtarma / Canlı kalıp oluşturmanıza imkan verir.

Nasıl Başlatılır?

Çalışma dizini oluşturun:

İlk yapılacak işlem, çalışmalarınızı kaydedeceğiniz 'work' dizinini oluşturmaktır:

 mkdir -p ~/work/manjaroiso

ManajaroISO Yüklenmesi

Sırada, manjaroiso ve profillerini yüklemektir:

 sudo pacman -S manjaroiso manjaroiso-profiles manjaroiso-community-profiles

Sonra ManjaroISO profillerini çalışma dizininiz altına kopyalayın:

 cp -a /usr/share/manjaroiso/configs ~/work/manjaroiso

ManjaroISO Profillerini Anlamak

ManjaroISO sürümüne bağlı olarak şu dizinleri elde edersiniz:

 build  cinnamon  e17  kde  lxde  mate  net  openbox  shared  sysmenu  xfce

Bu örnekte e17 dizininde çalışmayı inceleyeceğiz. E17 dizinine girdiğimizde aşağıdaki dosyaları görürüz:

Packages       isolinux         overlay           pacman-x86_64.conf
Packages-E17   isomounts        overlay-livecd    syslinux
Packages-Xorg  mkinitcpio.conf  pacman-gfx.conf
e17-overlay    options.conf     pacman-i686.conf

Packages bütün sürümler için ortak paketleri içerir.
Packages-E17 ,sadece E17 sürümü için gerekli paketleri içerir
Packages-Xorg bütün ortak Xorg paketlerini içerir
e17-overlay ,E17 için düzenlenebilir dizin ve dosyaları içerir.
Isolinux, isolinux.cfg dosyası ve syslinux bootloader yapılandırmalarını içerir
isomounts ,oluşturulacak imaj bilgileri ve başlama sıralarını içerir.
mkinitcpio.conf , gerekli modül bilgilerini içerir.
options.conf live-media için temel ayarları içerir
overlay ,bütün sürümlerin çalışabilmesi için gerekli ortak dizin ve dosyaları içerir.
Overlay-livecd , tüm sürümlerin live-session (canlı oturum) için gerekli dosya, klasör ve ayarlamaları içerir,
pacman-gfx.conf , pkgs-image yüklenmesi için ortak pacman.conf dosyasını içerir
pacman-i686.conf ,32 Bit Manjaro sürümleri için ortak pacman.conf içeriğidir.
pacman-x86_64.conf , 64 Bit Manjaro sürümleri için ortak pacman.conf içeriğidir.
Syslinux , bütün Manjaro sürümleri için önyükleyici( bootloader ) içerir

E17 Profilini Düzenleme

Aşağıdaki dosya ve dizinler E17 profili için önemlidir:

Packages-E17 
e17-overlay 
overlay-livecd 
isomounts 

Packages-E17 dosya içeriği şu şekildedir:

### Manjaro Packages

## E17 Main Packages
enlightenment17
faenza-green-icon-theme
gksu
libgnomeui
lxdm
network-manager-applet
system-tools
xcursor-simpleandsoft
xcursor-vanilla-dmz-aa

## Applications
blueman
epdfview
midori
mplayer
gparted
#manjaro-installer
sylpheed
xchat
xnoise

## Packages for Sound and Audio
gstreamer0.10-bad-plugins
gstreamer0.10-ffmpeg
gstreamer0.10-ugly-plugins

## Package management
pacman-gui

Bu dosyada istediğini paketleri ekleyerek/ çıkararak düzenleme yapabilir ve kaydedebilirsiniz.

e17-overlay dizini şu şekildedir:

 
e17-overlay
|-etc
|---skel
|-----.config
|-------epdfview
|-------gtk-2.0
|-------midori
|-----.local
|-------share
|---------applications
|---systemd
|-----system
|-usr
|---share
|-----icons
|-------default

Burada /etc/systemd/system/display-manager.service gibi ön yükleme esnasında kullanılan servisleri görebilirsiniz. Yine ekleme/çıkarma yaparak dilediğiniz özelliklere sahip Manjaro sistemini elde edebilirsiniz.(overlay-livecd de aynı dosyaların mükerrer yazılmadığına dikkat edin)

overlay-livecd dizini şu şekildedir:

overlay-livecd
|-etc
|---gdm
|---lightdm
|---manjaro
|---pam.d
|---samba
|---skel
|-----.config
|-------autostart
|-----.kde4
|-------share
|---------config
|-----Desktop
|---sudoers.d
|---systemd
|-----system
|-------multi-user.target.wants
|-root
|---.config
|-usr
|---bin
|---lib
|-----systemd
|-------system
|---sbin
|---share
|-----icons

Buraya ekleyeceğiniz herhangi bir düzenleme ,sadece live-session (canlı ortam) da görünür.

E17 için isomounts :

# manjaroiso isomounts file
# img - location of image/directory to mount relative to addons directory
# arch - architecture of this image
# mount point - absolute location on the post-initrd root
# type - either 'bind' or 'squashfs' for now
# kernel argument (optional) - if the kernel argument is set the overlay will be loaded. Leave empty to ignore. 
# Sample kernel argument in syslinux: overlay=extra,extra2

# syntax:     

# ORDER MATTERS! Files take top-down precedence. Be careful

#@ARCH@/pkgs-free-overlay.sqfs @ARCH@ / squashfs free
#@ARCH@/pkgs-nonfree-overlay.sqfs @ARCH@ / squashfs nonfree
@ARCH@/overlay.sqfs @ARCH@ / squashfs
#@ARCH@/lng-image.sqfs @ARCH@ / squashfs
@ARCH@/pkgs-image.sqfs @ARCH@ / squashfs
@ARCH@/e17-image.sqfs @ARCH@ / squashfs
@ARCH@/root-image.sqfs @ARCH@ / squashfs

Linux Çekirdeğine, overlay imajını hangi sıralama ile yükleyeceğini belirtir

Kurulum Ortamını İnşa Etmek:

Profilinizi düzenledikten sonra kurulum kalıbınızı oluşturabilirsiniz:

 sudo buildiso

EKLEME:

GIT DEPOSUNDAN SON SÜRÜM MANJAROISO İÇİN:

http://forum.manjaro.org/index.php?topic=2709.msg22027#msg22027


1
- Ev dizininizde 'manjaroiso-git' adı ile dizin oluşturun.

2
- Oluşturduğunuz dizin içerisinde 'PKGBUILD' dosyasını oluşturun.

3
- PKGBUILD dosyasına şu metni kopyalayarak kaydedin:

#
# maintainer: Philip Müller 

pkgbase=manjaroiso
pkgname=('manjaroiso-git' 'manjaroiso-git-profiles')
pkgver="0.8.r13.$(date +%m%d)"
pkgrel=1
arch=('any')
url="https://gitorious.org/chakra/manjaroiso"
license=('GPL')
makedepends=('git')
_git=yes

getsource() {
  cd "$srcdir"
  msg "Connecting to GIT server...."

  if [ -d $1 ] ; then
    if [ "$_git" == "yes" ] ; then
       cd $1 && git pull origin master
    else
       cd $1 && git pull origin master && git checkout -b $pkgver $pkgver
    fi
    msg "The local files are updated."
  else
    git clone $2 $1
    if [ "$_git" != "yes" ] ; then
       cd $1 && git checkout -b $pkgver $pkgver
    fi
  fi

  msg "GIT checkout done or server timeout"
}

build() {
  cd "$srcdir"
  getsource "manjaroiso" "git://git.manjaro.org/core/manjaroiso.git"
}

package_manjaroiso-git() {
  pkgdesc="Manjaro Linux livecd/liveusb generation scripts"
  depends=('mkinitcpio' 'mkinitcpio-nfs-utils' 'nbd' 'libisoburn' 'squashfs-tools' 'syslinux' 'haveged')
  optdepends=('qemu: quickly test isos' 'manjaroiso-profiles: Manjaro Linux ISO-Image profiles')
  conflicts=('manjaroiso')
  provides=('manjaroiso')
  cd ${srcdir}/${pkgbase}/src
  make DESTDIR="$pkgdir" install
}

package_manjaroiso-git-profiles() {
  pkgdesc="Manjaroiso Profiles"
  depends=('manjaroiso-git')
  conflicts=('manjaroiso-profiles' 'manjaroiso-community-profiles')
  provides=('manjaroiso-profiles' 'manjaroiso-community-profiles')
  cd ${srcdir}/${pkgbase}/
  mkdir -p $pkgdir/usr/share/manjaroiso/
  cp -r configs $pkgdir/usr/share/manjaroiso/configs
}


4
- PKGBUILD soyasının olduğu konumda uçbirim açın ve

makepkg -i

komutunu çalıştırın.

Bu komut ile manjaroiso ve profilleri yüklenecektir.

5- Örnek Kullanıcı 'yfdogan' için :

cd /home/yfdogan/manjaroiso-git/src/manjaroiso/configs/kde/
├── Packages -> ../shared/Packages
├── Packages-Kde
├── Packages-Lng -> ../shared/Packages-Lng
├── Packages-Xorg -> ../shared/Packages-Xorg
├── isomounts
├── isolinux -> ../shared/isolinux
├── kde-overlay
│   ├── etc
│   │   ├── skel
│   │   └── systemd
│   │       └── system
│   │           ├── display-manager.service -> usr/lib/systemd/system/kdm.service
│   │           └── graphical.target.wants
│   │               └── kdm.service -> usr/lib/systemd/system/kdm.service
│   └── usr
│       └── share
│           ├── config
│           │   └── kdm
│           │       └── kdmrc
│           └── icons
│               └── oxygen
│                   └── 48x48
│                       └── apps
│                           └── system-software-install.png -> /usr/share/pamac/icons/48x48/status/package-download.png
├── mkinitcpio.conf -> ../shared/mkinitcpio.conf
├── options.conf
├── overlay -> ../shared/overlay
├── overlay-livecd -> ../shared/overlay-livecd
├── pacman-gfx.conf -> ../shared/pacman-gfx.conf
├── pacman-i686.conf -> ../shared/pacman-i686.conf
├── pacman-lng.conf -> ../shared/pacman-lng.conf
└── pacman-x86_64.conf -> ../shared/pacman-x86_64.conf

17 directories, 15 files
In the kde-overlay folder all customized files get added especially for that edition. Those can be configuration files for example for kickoff.
Packages-KDE will define which packages get additional installed for that edition
Packages-Lng include extra translation packages for libreoffice, firefox, thunderbird and kde itself. It can be removed but isomounts file needs to be adjusted not to load the lng-image.sqfs file which won't exists if Packages-Lng file got removed from that directory.
And in pacman-$arch.conf files you can define which Manjaro-Repository-Branch should be used.
If you change it to Manjaro-Testing you need to edit work*/root-image/etc/pacman.conf during creation of kde-image.sqfs with for example kate to match pacman-$arch.conf.

sudo kate work*/root-image/etc/pacman.conf

All in all pretty simple as already explained in our wiki.

NOT:Örnek 64 Bit KDE kalıbı oluşturacaksanız, /home/yfdogan/manjaroiso-git/src/manjaroiso/configs/kde/ konumundaki pacman-x86_64.conf dosyasındaki depoları 'unstable' hale getirin.
Örnek:

#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives

#
# GENERAL OPTIONS
#
[options]
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir     = /
#DBPath      = /var/lib/pacman/
#CacheDir    = /var/cache/pacman/pkg/
#LogFile     = /var/log/pacman.log
#GPGDir      = /etc/pacman.d/gnupg/
HoldPkg     = pacman glibc manjaro-system
# If upgrades are available for these packages they will be asked for first
SyncFirst   = manjaro-system pacman
#XferCommand = /usr/bin/curl -C - -f %u > %o
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
#CleanMethod = KeepInstalled
Architecture = auto

# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg   =
#IgnoreGroup =

#NoUpgrade   =
#NoExtract   =

# Misc options
#UseSyslog
#UseDelta
#TotalDownload
CheckSpace
#VerbosePkgLists


# By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages.
#SigLevel = Optional TrustedOnly

# NOTE: You must run `pacman-key --init` before first using pacman; the local
# keyring can then be populated with the keys of all official packages
# Manjaro Linux supports with `pacman-key --populate archlinux manjaro`.

#
# REPOSITORIES
#   - can be defined here or included from another file
#   - pacman will search repositories in the order defined here
#   - local/custom mirrors can be added here or in separate files
#   - repositories listed first will take precedence when packages
#     have identical names, regardless of version number
#   - URLs will have $repo replaced by the name of the current repo
#   - URLs will have $arch replaced by the name of the architecture
#
# Repository entries are of the format:
#       [repo-name]
#       Server = ServerName
#       Include = IncludePath
#
# The header [repo-name] is crucial - it must be present and
# uncommented to enable the repo.
#

[basis-unstable]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist

[platform-unstable]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist

[addon-unstable]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist

[extra-unstable]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist

[community-unstable]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist

# If you want to run 32 bit applications on your x86_64 system,
# enable the multilib repositories as required here.

[basis-multilib-unstable]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist

[multilib-unstable]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist

# An example of a custom package repository.  See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs

6- Kalıp oluşturma komutunu girin:

sudo buildiso

DEV DİZİNİ İLE

sudo pacman -U  http://ftp.nluug.nl/os/Linux/distr/manjaro/addon/x86_64/manjaroiso-0.8.xxx-any.pkg.tar.xz 
sudo pacman -S git base-devel
mkdir -p ~/dev && cd ~/dev
git clone git://git.manjaro.org/core/manjaroiso.git
cd ~/dev/manjaroiso/configs/kde
sudo buildiso

GIT DEPOLARI İLE

git clone git://git.manjaro.org/core/manjaroiso.git

http://vimeo.com/63063954

Kaynak: http://wiki.manjaro.org/index.php/ManjaroISO


 
Gönderildi : 26/04/2013 8:51 pm
Paylaş:
Translate »