Difference between revisions of "GNOME/BuildStream"

From i14i
Jump to navigation Jump to search
(←Membuat halaman berisi 'Membangun GNOME Memakai BuildStream =Memulai= ==Kebutuhan== Ruang disk paling tidak 20 GB ==Pasang BuildStream== Acuan: https://buildstream.gitlab.io/buildstream/inst...')
 
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
Membangun GNOME Memakai BuildStream
Membangun GNOME Memakai BuildStream
https://wiki.gnome.org/Newcomers/BuildSystemComponent


=Memulai=
=Memulai=
Line 7: Line 8:
Acuan: https://buildstream.gitlab.io/buildstream/install.html
Acuan: https://buildstream.gitlab.io/buildstream/install.html


===Debian Buster/Sid===
Untuk Debian Buster/Sid, pasang paket dasar:
Pasang paket dasar:
<pre>sudo apt-get install python3-dev python3-pip git python3-gi gir1.2-ostree-1.0 ostree bubblewrap python3-ruamel.yaml fuse libfuse2</pre>
<pre>sudo apt-get install python3-dev python3-pip git python3-gi gir1.2-ostree-1.0 ostree bubblewrap python3-ruamel.yaml fuse libfuse2</pre>


Line 17: Line 17:
lxc.cgroup.devices.allow = c 10:229 rwm</pre>
lxc.cgroup.devices.allow = c 10:229 rwm</pre>


Lalu jalankan juga di VM lxc<pre>user@host:~$ sudo cp -a /dev /dev.old
Lalu jalankan juga di VM lxc<pre>$ sudo cp -a /dev /dev.old
$ sudo apt-get install sshfs
$ sudo apt-get install sshfs
$ sudo cp -a /dev.old/* /dev/
$ sudo cp -a /dev.old/* /dev/
$ sudo mknod /dev/fuse c 10 229
$ sudo mknod /dev/fuse c 10 229
$ sudo update-rc.d -f udev disable</pre>
$ sudo addgroup --system fuse
$ sudo chgrp fuse /dev/fuse
$ sudo chmod g+w /dev/fuse
$ sudo usermod -G fuse `whoami`</pre>


Pasang dengan pip:
Pasang dengan pip:
Line 66: Line 69:


=Membangun GNOME=
=Membangun GNOME=
==Unduh Proyek GNOME==
==Build pertama==
==Ambil metadata build terakhir==
==Menjalankan perangkat lunak yang dibangun memakai BuildStream==
==Mengembangkan==
==Memutakhirkan satu modul==


=Bila Ada yang Salah=



=Langkah Selanjutnya=

Latest revision as of 12:22, 13 March 2020

Membangun GNOME Memakai BuildStream https://wiki.gnome.org/Newcomers/BuildSystemComponent

Memulai

Kebutuhan

Ruang disk paling tidak 20 GB

Pasang BuildStream

Acuan: https://buildstream.gitlab.io/buildstream/install.html

Untuk Debian Buster/Sid, pasang paket dasar:

sudo apt-get install python3-dev python3-pip git python3-gi gir1.2-ostree-1.0 ostree bubblewrap python3-ruamel.yaml fuse libfuse2

Pasang juga paket-paket berikut:

sudo apt install build-essential autoconf libtool pkg-config python3-dev

Bila memakai VM lxc, siapkan agar VM bisa memakai fuse, dengan menambahkan baris berikut pada berkas config VM lxc di VM host:

#fuse
lxc.cgroup.devices.allow = c 10:229 rwm

Lalu jalankan juga di VM lxc

$ sudo cp -a /dev /dev.old
$ sudo apt-get install sshfs
$ sudo cp -a /dev.old/* /dev/
$ sudo mknod /dev/fuse c 10 229
$ sudo addgroup --system fuse
$ sudo chgrp fuse /dev/fuse
$ sudo chmod g+w /dev/fuse
$ sudo usermod -G fuse `whoami`

Pasang dengan pip:

git clone https://gitlab.com/BuildStream/buildstream.git
cd buildstream
pip3 install --user -e .

Sesuaikan path, jalankan yang berikut, dan tambahkan juga di ~/.bashrc:

export PATH=${PATH}:~/.local/bin

Bash completion, pasang yang berikut di ~/.bash_completion:

# BuildStream bash completion scriptlet.
#
# On systems which use the bash-completion module for
# completion discovery with bash, this can be installed at:
#
#   pkg-config --variable=completionsdir bash-completion
#
# If BuildStream is not installed system wide, you can
# simply source this script to enable completions or append
# this script to your ~/.bash_completion file.
#
_bst_completion() {
    local IFS=$'
'
    COMPREPLY=( $( env COMP_WORDS="${COMP_WORDS[*]}" \
                   COMP_CWORD=$COMP_CWORD \
                   _BST_COMPLETION=complete $1 ) )
    return 0
}

complete -F _bst_completion -o nospace bst;

Atur BuildStream

Buat berkas .config/buildstream.conf yang berisi:

# This configuration reduces the amount of necessary rebuilds
projects:
  gnome:
    strict: False

# This configuration lets you control the number of allowed parallel builds
scheduler:
  builders: 2

Membangun GNOME

Unduh Proyek GNOME

Build pertama

Ambil metadata build terakhir

Menjalankan perangkat lunak yang dibangun memakai BuildStream

Mengembangkan

Memutakhirkan satu modul

Bila Ada yang Salah

Langkah Selanjutnya