Commit Graph

177 Commits

Author SHA1 Message Date
may
d56eb10c8d [general] remove duplicate download item 2019-05-15 17:33:12 +08:00
Igor Pecovnik
18f6113751 Revert "some enchantments for build scripts (#1364)"
This reverts commit 7f1c5b19cd.
2019-05-15 10:00:23 +02:00
mei
7f1c5b19cd some enchantments for build scripts (#1364)
* downloader aria2 replace curl

aria2 is a fast downloader and it can do much more than curl
 - skip download when target file exists
 - restart an interrupted download session
 - multithreading

* remove duplicate download item

* change btrfs compression to zstd and no force compression

* mkfs.btrfs options '--data single --metadata single --label btrfs'

disable dup(duplication) on microsd card

* [fstab] change mountopts[btrfs] compression method to zstd

lzo is no fater than zstd because the low 4k write performance on my
Samsung EVO+ 32GB microsd card.
meanwhile the best io size is above 32k based on benchmark

* replace dd with truncate, create a sparse disk image

* create btrfs subvolume by default

subvolume @ as rootfs, mount at /
subvolume @home as /home, mount at /home

* fix extraargs in armbianEnv.txt

* remove tmpfs mount on /tmp

A zram block device will mount on /tmp by
/usr/lib/armbian/armbian-zram-config.

And instead, mount /media as tmpfs.

* [rsync] add '--inplace' option, optimize for btrfs

* [general.sh] change ntp server to pool.ntp.org

* [general] new option to setup btrfs compression method

for support old and boring 3.x kernels

* [general] set btrfs space cache based kervel version

kernel version above 4.5 select 'v2' as default

* [btrfs] BTRFS_COMPRESSION accept compression ratio

BTRFS_COMPRESSION=zlib
BTRFS_COMPRESSION=zstd:5
BTRFS_COMPRESSION=zstd:12 are acceptable

* [btrfs] set btrfs compression to lzo when input is illegal

* [general] new option DOWNLOAD_MIRROR to select download mirror

current DOWNLOAD_MIRROR=china is used
the mirror is provided by tsinghua university

* [general] replace USE_MAINLINE_GOOGLE_MIRROR with MAINLINE_MIRROR

MAINLINE_MIRROR=google, use google provided mirror
MAINLINE_MIRROR=tuna, use tsinghua provided mirror
leave it empty, use official git.kernel.org

* fix btrfs default compression

* display $fscreateopt

* display_alert BTRFS_COMPRESSION

* try fix BTRFS_COMPRESSION variable not working

* debug fetch_from_repo

* configuration.sh debug BTRFS_COMPRESION

* update logic

* debug checking btrfs compression

* fix variable check,fix local variable usage

* [general] replace USE_MAINLINE_GOOGLE_MIRROR with MAINLINE_MIRROR

MAINLINE_MIRROR=google, use google provided mirror
MAINLINE_MIRROR=tuna, use tsinghua provided mirror
leave it empty, use official git.kernel.org

* [general] new option DOWNLOAD_MIRROR to select download mirror

current DOWNLOAD_MIRROR=china is used
the mirror is provided by tsinghua university

* Revert "try fix BTRFS_COMPRESSION variable not working"

This reverts commit 9814cfb054.

* Revert "debug fetch_from_repo"

This reverts commit ba571f0d89.

* add default compression method for mountopts

* remove useless var

* remove debug

* remove debug

* [general] set btrfs space cache based on kernel version

kernel version above 4.5 select 'v2' as default,
below 4.5 select 'v1' as default

* [general] reintroduce USE_MAINLINE_GOOGLE_MIRROR

* [general] case replaces 'if xx ;elif xxx;fi'

* [general] fix always downloading linux-firmware.git

clone to new dir 'linux-firmware-git' instead the old '$plugin_dir/lib/firmware'
,and then copy files as hardlinks.

* [general] create soft link instead of moving directory

* [btrfs] change rootfs subvolume name to @$RELEASE

now, the rootfs subvolume looks like @stretch,@bionic
it is possible to use different distribution in the same btrfs
partition.
2019-05-14 18:37:00 +02:00
Igor Pecovnik
552db3d323 Buster and Disco releated adjustements. 2019-05-13 07:47:29 +02:00
Igor Pecovnik
2bd7f8efbd [ Odroid N2 ] Added Odroid N2 with mods necessary to build from sources. Made a few tests builds ... it works at least as good as stock. 2019-05-10 10:27:01 +02:00
Igor Pecovnik
181c97055c [ buster / disco ] Disable extra-package creation and repository since its broken and represent lots of work 2019-04-20 17:32:14 +02:00
m][sko
24c81d1b05 Ubuntu 19.04 support (#1351)
* ubuntu 19.04 support

* ubuntu 19.04 support 2

* ubuntu 19.04 support 3

* add netplan config
2019-04-19 17:14:57 +02:00
Igor Pecovnik
b92f11e89a [ added Debian buster ] Initial commit. It builds, but its not tested nor fine tuned. 2019-04-17 21:39:54 +02:00
Igor Pecovnik
dfa23380ea [ general ] Linaro compilers update to 2019.02 2019-04-11 00:32:25 +02:00
Igor Pecovnik
b2eea32cb4 [ general ] Locales fix/workaround to make warning go away 2019-04-05 09:37:47 +02:00
The-going
eb528f6c9e
Fix: incomplete cleaning of the source code.
Before you begin the compilation process,
we should always check and clean the sources.

If not, then warn the user.
2019-03-18 11:54:07 +03:00
Zhang Ning
1c86794d01 fix fetch gpg key behind a proxy
add --keyserver-options when http_proxy env is set.

for docker build, need to pass http_proxy to docker

Signed-off-by: Zhang Ning <832666+zhangn1985@users.noreply.github.com>
2019-03-12 14:44:02 +08:00
Zhang Ning
5d12350e9a change aptly apt key server to ubuntu
it's difficult to access sks-keyservers key server.

Signed-off-by: Zhang Ning <832666+zhangn1985@users.noreply.github.com>
2019-03-12 14:38:06 +08:00
Igor Pečovnik
3a89ab7982
Adding CPIO package to the host list
That Docker Ubuntu image will also work as a host.
https://github.com/armbian/build/issues/1292
If that is all ...
2019-02-25 16:27:57 +01:00
Igor Pečovnik
2563185ffc
[ cosmetics ]
Suppress error at counting rootfs caches.
2018-12-20 13:31:13 +01:00
Igor Pecovnik
a4e4d56168 [ general ] Fixing aptly to a better workaround solution. 2018-12-03 07:50:21 +01:00
Igor Pecovnik
416bff334d [ build script ] update etcher 2018-11-26 20:52:29 +01:00
Thomas McKahan
819937ba99 Fix apt key fetch for aptly 1.2.0 2018-10-23 20:52:11 -04:00
Thomas McKahan
20d9d74446 Fix linaro 4.8 public key fetching 2018-10-23 01:10:17 -04:00
Igor Pecovnik
a4f069f9b1 [Buildscript] Update Etcher for CLI 2018-10-19 17:59:17 +02:00
Igor Pecovnik
fa88e5c2aa Implement bulding and packing all different boot firmware for Espressobin, bump u-boot and ATF sources to latest version 18.09 2018-09-09 23:22:50 +02:00
zciendor
bd83c60b23
Merge remote-tracking branch 'upstream/master' 2018-08-26 07:04:03 -05:00
Igor Pecovnik
128829764b Proper rootfs cleaning. Support for cleaning signatutures as well. 2018-08-15 18:45:29 +02:00
Igor Pecovnik
98c9505d0b Rootfs cache management bugfix due to added Bionic targt. 2018-08-15 15:31:58 +02:00
Igor Pecovnik
f5f7a0836a Moving numix-icon theme back to main package list since its fixed with this commit b293f186fb (diff-cc2879263e4a73e37cf60f2fa6b3fb64) , etcher download rfc, minor fixes 2018-08-10 22:44:55 +02:00
Igor Pecovnik
c721510e6e Add support for burning to SD card using Etcher for CLI 2018-08-03 19:35:19 +02:00
zciendor
ddf0ed1edf
Redo of implementation for feature request #947 on current master
This was already implemented with https://github.com/armbian/build/pull/948,
before but never made it into the master branch yet. Probably because the
development branch has been abandoned in the meantime and it is to much effort
now to merge it into master.

It includes all the cleanup changes from commit 08743d3 and has been successfully
tested on an Odroid HC1.

In addition to what is currently in the `luks` branch the following improvments
where done/added:

1. update_initramfs() function in debbootstrap-ng.sh, which needs to be invoked
   after the partition layout and /etc/crypttab was created. Else `cryptroot-unlock`
   won't work and you'll run into:
   https://serverfault.com/questions/907254/cryproot-unlock-with-dropbear-timeout-while-waiting-for-askpass

   Apart from that it might be useful to always run `update-initramfs` at the end
   of the build process anyway, in case customize_image (userpatches) made some
   changes to the initramfs tools configs.

2. CRYPTROOT_SSH_UNLOCK=yes/no config option. It's by default set to yes, but it
   might be desired by some users to disable enable SSH/dropbear access while
   still having LUKS support. E.g. if they have a device that has a display
   and keyboard.

3. If no `authorized_keys` file is provided via userpatches, a new SSH key pair
   is generated and for convenience copied to the output directory along with
   the final image.
2018-07-31 16:02:26 -05:00
Igor Pečovnik
1d18b1ea1b
reverting back to main server 2018-07-17 11:43:16 +02:00
Igor Pecovnik
a9de196c42 Switch to backup server for downloading the toolchains. Speed is the same. 2018-07-01 19:03:36 +02:00
Igor Pečovnik
8aacc920da
Update aptly key 2018-07-01 17:21:36 +02:00
zador-blood-stained
6afe135989 Better handling for additional ATF toolchains 2018-06-13 19:23:00 +03:00
Igor Pecovnik
d1a9c8a768 Merging main libs into the stable. Hack for building Bionic on Xenial left out 2018-05-24 21:01:02 +02:00
zador-blood-stained
91852b6910 Enable initial Bionic host support 2018-04-29 15:32:18 +03:00
zador-blood-stained
7179692dca Sync and update host dependencies 2018-04-29 15:30:20 +03:00
Igor Pečovnik
2da24cfeeb
Adding bison GNU parser generation
Apparently needed for K4.16.y
2018-02-18 19:24:27 +01:00
zador-blood-stained
f8709ec46b Log build directory permissions to detect dpkg packaging errors 2018-01-27 17:43:18 +03:00
Igor Pecovnik
5ad2a947bb Cosmetic fix - showing error even it wasn't there when creating repository. 2018-01-20 22:39:15 +01:00
zador.blood.stained
5b1367a87b Add experimental check for WSL hosts 2018-01-12 17:15:59 +03:00
zador.blood.stained
e755245208 Improve unsupported release handling and drop Trusty workarounds 2018-01-05 12:56:32 +03:00
Olgierd Nowakowski
e07731de90 Add supported host system override 2018-01-04 18:41:25 +01:00
Igor Pecovnik
f411ba18c2 Small bugfix on repository creation error checkings 2017-12-08 16:44:28 +01:00
Igor Pecovnik
4a523d56e7 Repository handling RFC, purge debs directory if publishing is succesful, added local server, few extra checks ... 2017-12-06 17:38:38 +01:00
orpaltech
e35af2991c
allows untar to a samba share 2017-12-01 12:39:26 +03:00
zador-blood-stained
022f4889a1 Limit build host arch to amd64 only 2017-11-25 15:44:58 +03:00
zador-blood-stained
25defe223a Update Linaro toolchains 2017-11-25 15:42:40 +03:00
zador-blood-stained
6f00f00be7 Add a warning message for Ubuntu Trusty host support EOL 2017-11-04 20:21:58 +03:00
zador.blood.stained
e1ba411f16 Rework host dependencies installation
Drop dialog for installing hostdeps, use apt instead of apt-get, move
dialog to main dependencies list, update file list prior to installing
missing lsb-release
2017-11-04 16:48:02 +03:00
zador-blood-stained
889c598d90 Small bugfix
sudo is useless here as we are running as root already, and it may be
missing in some minimal configurations (like Docker and VM images)
2017-10-28 22:42:04 +03:00
Igor Pecovnik
e2d94b5055 Host dependencies fix. Aptly from (any) distribution is too old. Adding author repository and update from there. 2017-10-15 23:22:01 +02:00
Igor Pecovnik
6f0ff3e772 Bugfix and some other small fixes to repository management 2017-09-26 15:28:05 +02:00
Igor Pecovnik
81b5952296 Further bugfixing to repository update function 2017-09-26 15:02:24 +02:00
Igor Pecovnik
08314ed8ee Bugfix ...error when publishing empty repository 2017-09-25 23:51:45 +02:00
zador-blood-stained
5b3285d374 Build utils separately for different releases (incl. Stretch) 2017-09-25 19:32:34 +03:00
zador-blood-stained
34b4b373fa Add Linaro GCC 6.3 and mirror toolchains on dl.armbian.com 2017-09-25 13:20:07 +03:00
zador-blood-stained
a2c4700d5c Use fakeroot for dpkg-deb packaging 2017-09-11 16:53:42 +03:00
zador-blood-stained
16fbff0982 Update Linaro toolchains 2017-08-31 17:07:18 +03:00
zador-blood-stained
1acf3801ae Small build script dependencies update 2017-08-23 12:37:13 +03:00
zador-blood-stained
0ef5e2ed6d Drop unused gcc 4.9 toolchain dependencies 2017-08-20 22:07:08 +03:00
zador-blood-stained
ced43bf527 Drop aarch64 host toolchain dependencies 2017-08-20 22:03:28 +03:00
zador-blood-stained
595cae9141 Drop the soft float host toolchain dependency 2017-08-20 21:13:01 +03:00
zador-blood-stained
e9d0dd9e3b Fix output and userpatches group and permissions 2017-08-20 17:37:00 +03:00
zador-blood-stained
e1cce01e6a Add Linaro 5.4 toolchains for future use 2017-08-19 13:11:24 +03:00
zador-blood-stained
57c98073b7 Refactor rootfs cache file number limit 2017-08-03 19:29:39 +03:00
zador-blood-stained
50e593e494 Docker and Vagrant fixes and improvements 2017-08-02 21:57:33 +03:00
Igor Pecovnik
3a104c46bd RFC. Merge repo-show and update under one script 2017-08-02 18:14:46 +02:00
Igor Pecovnik
1254af3369 Buildall Stretch preparation 2017-08-02 13:26:15 +02:00
zador-blood-stained
04f5972b9c Build linux-source package for the kernel
Small refactoring
2017-08-01 22:30:48 +03:00
zador-blood-stained
ab7a73be31 Small cleanup 2017-08-01 15:31:54 +03:00
zador-blood-stained
a190eebf43 Update the build script github repo address
Remove shebangs from non-executable files
2017-08-01 12:51:10 +03:00
zador-blood-stained
fa7052927f Update directory permissions when using sudo 2017-08-01 12:31:07 +03:00
zador-blood-stained
8396c95368 Improve Vagrant support
Fixes #676
2017-08-01 12:31:05 +03:00
zador-blood-stained
61b2bfb741 Improve Docker support
Closes #489
2017-08-01 12:30:34 +03:00
zador-blood-stained
bba9d70128 Move created config and patches to output 2017-08-01 12:26:12 +03:00
zador-blood-stained
321fcf20a0 Remove useless CACHEDIR variable 2017-08-01 12:26:12 +03:00
zador-blood-stained
1949c0b6da Move debootstrap and packaging directories to a temp directory
This avoids errors with filesystem features and permissions when output
directory is shared in Virtualbox (i.e. when using Vagrant)
2017-08-01 12:26:10 +03:00
zador-blood-stained
56eac46d6c Remove useless SOURCES variable 2017-08-01 12:25:03 +03:00
zador-blood-stained
91be332f8a Refactor directory structure
Remove "parent of the project directory" setup
Closes #633
Closes #674
2017-08-01 12:24:56 +03:00