Commit graph

965 commits

Author SHA1 Message Date
Igor Pecovnik
81c457af75 Add Armbian groovy CLI configuration as a link to Focal
They are identical - linked configuration works.
2020-11-03 19:57:29 +01:00
Igor Pecovnik
b43348472e Tested and compared CLI builds of Focal standard and minimal 2020-11-03 19:24:54 +01:00
Igor Pecovnik
e7f94407ae Resolved merge conflicts. 2020-11-03 13:36:25 +01:00
Igor Pecovnik
17324dbab0 Merge remote-tracking branch 'origin/master' into desktop 2020-11-02 12:34:38 +01:00
Miouyouyou (Myy)
e9c7a34e65
Preliminary support for limiting to a specific architecture
Currently only desktop environments are supported, through this
feature.

I still can't limit the menu, since the ${ARCH} information
from the board is sourced from the board configuration file,
just after displaying all the menus.

So ATM, an error will be displayed if you select a desktop
environment :
* with a "only_for" file present in its directory
* without the architecture name (arm32, arm64) being written
  inside the "only_for" file.

The next step is to generalize that for appgroups.

Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
2020-11-01 09:37:07 +01:00
iav
af7aa141c3
Add xfs filesystem for root creation (#2294) 2020-11-01 08:24:08 +01:00
Werner
4532f2b1f7
Fix mixing sources due to improper moving of debs (#2293) 2020-10-31 20:00:43 +01:00
Piotr Szczepanik
298b458d33
Support building 5.8.17+ and 5.9.2+ kernels (#2292) 2020-10-30 20:28:20 +01:00
Miouyouyou (Myy)
f64b738f92
Merge branch 'master' of https://github.com/armbian/build into new-desktop
Can I say how bad merge tools are in 2020 ?
Meld is REALLY confusing to use.

So new issues may have arise due to bad merging (only).

Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
2020-10-29 13:30:25 +01:00
Miouyouyou (Myy)
68b453d1b1
Fixed a few issues with packages.remove
Turns out that packages at the beginning, or at the end of
the packages list were not filtered correctly.
Also the Desktop packages list needed to be filtered too.

Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
2020-10-29 13:02:08 +01:00
Miouyouyou (Myy)
bcd99739ce
Tested and fixed support for packages.remove
packages.remove can now be placed inside cli/main,
desktop/environments and desktop/appgroups directories
in order to remove packages from the list of packages
to install.

Note that this does NOT trigger an apt remove. This
just remove the package from the list of packages to
install.
That said, if you install a package that clearly depends
of the "removed" package, it will be installed anyway.

Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
2020-10-29 05:21:40 +01:00
Miouyouyou (Myy)
195cce185c
Testing simple CLI support. Removed APT options menu.
The base logic of the CLI support is now tested.
However the package.remove feature is still untested ATM.

The APT install options menu has been removed, but the variable
is still there. You can still set it to "suggests recommends" if
you want to generate a nice 10GB image.
I'm barely kidding here, APT goes CRAZY if you enable
--install-suggests and --install-recommends for anything.
So the option is now available for experimented builders only.

Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
2020-10-29 04:20:11 +01:00
5kft
56c7a6658a
implemented more changes for supporting kernel v5.10 2020-10-28 17:43:37 -07:00
5kft
9247f0dbf3
implemented initial packaging changes to support kernel v5.10 2020-10-27 17:19:29 -07:00
Igor Pecovnik
f6c0c1b20e Merge branch 'master' into desktop 2020-10-27 20:44:00 +01:00
Igor Pečovnik
98f1df4e79
More fixes for (not)improved_git (#2287)
* Reverting improved_git to normal in the patch creating function

* Remove two more variants of improved_git which is causing us headache
2020-10-27 20:41:53 +01:00
5kft
709a484d22
fix build repository URL determination logic to handle multiple remotes (#2284) 2020-10-27 11:49:56 -07:00
Igor Pecovnik
7acea76035 Merge branch 'master' into desktop 2020-10-27 19:20:58 +01:00
Igor Pečovnik
2793bd15d2
Reverting improved_git to normal in the patch creating function (#2286) 2020-10-27 19:20:53 +01:00
Igor Pecovnik
3411eaf673 Merge branch 'master' into desktop 2020-10-27 19:20:26 +01:00
Igor Pecovnik
6879fff1a7 Add groovy separate due changes in packages
cleanup, few minor fixes, adding desktop target separately
2020-10-27 19:19:35 +01:00
Igor Pecovnik
61f47b8b9e Add variables to build-all and link groovy 2020-10-26 10:23:42 +01:00
Igor Pečovnik
51566cc479
Bugfix for multicore compilation (#2280)
* Bugfix for multicore compilation

* Missing second part
2020-10-25 19:13:13 +01:00
Igor Pecovnik
a7eb7fdc96 Move Pinebookpro desktop settings to new location
Need to be confirmed by PBP user
2020-10-25 13:40:44 +01:00
Igor Pecovnik
e7271137e7 Add desktop name to the cache files 2020-10-24 22:07:50 +02:00
Igor Pecovnik
e764e22a6e Adjust Gnome destkop
- add transmission-remote
- change libre office style
- add support for gdm3
- add new packages group for gnome3 - languages and install a few most used packs by default
2020-10-23 18:55:27 +02:00
Igor Pečovnik
463681ec3b
Rich neese desktop builder merge (#2270)
* rm  board uboot

* merging to head

* add new xorg config

* adding new asound files

pine-book-pro and rk3399

* fixing image-helper

* chaanged to apt-get from apt

* working to fix image-helpers.sh

* Readd heli

* Remove spaces

Co-authored-by: richneese <r.neese@gmail.com>
2020-10-22 17:24:02 +02:00
Igor Pecovnik
9b12d2907f Improve multicore build process by make use of overlays and uniqie temporally build directories 2020-10-21 15:31:32 +02:00
Igor Pecovnik
619966891c Bugfix - don't die in case of Mirror sync in progress? 2020-10-18 21:51:05 +02:00
lanefu
70faacfeef
tweak variable expansion for improved_git (#2262)
* tweak variable expansion for improved_git

* Update general.sh

Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
2020-10-18 20:35:09 +02:00
Igor Pecovnik
56c2ee5382 Backend hash creation bugfix 2020-10-18 16:34:44 +02:00
Piotr Szczepanik
c43c4e9cbd Add SPI flash boot support to rockchip64/rk3399 2020-10-17 23:38:05 +02:00
Miouyouyou (Myy)
b9f58b85ef
Draft commit : Mimick the desktop setup on CLI
The whole point is to get away, as much as possible, from the
Bash script, and use only easy to read configuration files.

For that purpose, the Desktop packages system is being mimicked
for the standard command-line only images.

New folders have been added :

* config/cli/${RELEASE}/debootstrap
* config/cli/${RELEASE}/main

Both parts can contain :
* packages
* config_${SELECTED_CONFIGURATION}/packages
* custom/boards/${BOARD}/packages
* custom/boards/${BOARD}/config_${SELECTED_CONFIGURATION}/packages

For the "main" part, you can also have packages.additional in the
same folder. These files will use to populate the PACKAGES_LIST_ADDITIONAL
variable.

For the "debootstrap" part, you can also have "components" files,
which will be used to populate the DEBOOTSTRAP_COMPONENTS variable.

This is still untested for the moment, so don't use it unless you
can fix it.

Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
2020-10-16 21:25:17 +02:00
Igor Pečovnik
1275f118e2
Change desktop cache name, add support for automated cached creation / switching (#2257) 2020-10-16 15:25:15 +02:00
Igor Pečovnik
6cad8a346b
Add menu for building images from repository (#2256) 2020-10-15 21:55:56 +02:00
Igor Pečovnik
448484f6d8
Change Ubuntu Eoan to Ubuntu Groovy and enable it as CSC (#2254)
* Change Ubuntu Eoan to Ubuntu Groovy and enable it as CSC

Tested CLI and desktop image, but needs cache creation and repository before it will be possible to build without error.

* Update Groovy compiler for chroot

* Adjust pkg dependencies for groovy

Sadly htop doesn't build
2020-10-14 22:50:11 +02:00
Igor Pecovnik
43896d5891 Bugfix for backend operations 2020-10-14 14:53:35 +02:00
Igor Pečovnik
e8f961c9c7
Mitigate git server failures by retrying git commands several times. (#2251)
* Mitigate git server failures by retrying git commands several times.
* Bugfix - commit type was not working at all. Now it works
2020-10-14 08:36:21 +02:00
iav
599dd2a8cb
Don't delete /boot/armbianEnv.txt file at least for meson64 (#2252)
* Don't delete /boot/armbianEnv.txt file at least for meson64
fix for #2249 ODroid-N2 armbian-config-->hardware menu not work

* Update meson.txt

* Update boot-odroid-n2.ini

Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
2020-10-13 20:34:45 +02:00
Igor Pecovnik
0443bb082d Bugfix - create hash-beta directory when initializing directories 2020-10-12 20:32:54 +02:00
Miouyouyou (Myy)
6ef8e3f685 Merge branch 'Feature-1-Adding-custom-repos' into new-desktop 2020-10-08 00:06:45 +02:00
Miouyouyou (Myy)
ee4133210a
Added the ability to provide third party APT sources
Even though, its use should be limited as much as possible.
Third party APT repositories are the biggest source of problem and
instabilities, when commonly used packages start to being pulled from
them.

Still, some required packages (like graphics drivers, patched
media players, ...) require third party APT repositories, so the
possibility to source from third party APT repositories has been
added.
You can also provide the GPG keys, if the repository isn't a PPA
and add-apt-repository cannot get the key automatically.

Again, adding GPG key is extremely dangerous. If you accept GPG
keys from malicious individuals, your system will provide you with
no warnings when you install malicious packages signed with these keys.

Still, there are repositories, like the Docker one, which require
adding the GPG key by hand.

Note that the current system doesn't provide anyway to source the
GPG from a keyserver yet.
I didn't add this feature since I don't know many third-party APT
repositories (at all), which won't provide GPG keys automatically
(like Launchpad PPA) but have keys that can be still be sourced from
a GPG server...

Still, the feature is implemented, it works... but should only be
mainly used by people customizing the images for their needs.
On the Armbian side, we are going to put all the Debian packages,
required for the traditional Armbian installation, on Armbian
repositories.

Also :
* In order to provide the ability to add APT repositories,
  add-apt-repository is required. For that purpose, the list
  of packages required by the Desktop options is now kept separate.
  During debootstrap :
  * the 'standard' package are installed first, in order to get
    add-apt-repository;
  * then the APT repositories are added;
  * then the Desktop packages are installed;
  There's still a bug remaining on that regard. APT repositories
  and Desktop phases should be skipped if "BUILD_DESKTOP != yes".
  This will be fixed in the next commits.
* In order to preserve the list of Desktop packages, a new variable
  "DEBIAN_RECOMMENDS" has been added to
  desktop.sh: create_desktop_package() . This variable is now used
  for storing comma-separated list of recommended packages.
* I reverted part of the clutter added to the builder Docker
  configuration.
* I replaced vague checks ( != "no" ) by precise checks ( == "yes" )
  for Desktop options, so that options like KERNEL_ONLY don't
  trigger Desktop related questions. This still needs to be
  thoroughly tested, but this should resolve #12 .

Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
2020-10-07 23:46:07 +02:00
Igor Pecovnik
fe357e40e2 Backend - improve u-boot multibuild install 2020-10-05 00:11:50 +02:00
Miouyouyou (Myy)
52ab39f002
Feature #1 - Turns out that adding repos isn't that easy
The best way to add PPA and APT repositories on Ubuntu systems, at
least, is to use add-apt-repository .
However add-apt-repository requires software-properties-common .

On Armbian, this package is installed along the other packages, but
if we want to add PPA repositories BEFORE triggering the packages
installation, we need this package installed before.

Now, installing software-properties-common during Deboostrap causes
the process to stop.

So... Two solutions :
1. Split the installation of the "PACKAGE_LIST" in order to install
the main package list (the one that will be installed no matter what),
and the Desktop packages list which is only required to install
the selected Desktop items.
This is the approach being tested right now. I still have to check
if that works well.
2. Forget about add-apt-repository and force the addition of 3rd party
repositories through files, similar to /etc/apt/sources.list.d . This
approach makes adding PPA a bit more difficult, since you have to
  2.1 Find the real APT URL
  2.2 Find the GPG key used to sign the packages

I'll take the second approach if the first one causes some issues.

Still, I didn't think that "just" adding APT repositories would be
so cumbersome.

Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
2020-10-04 22:09:25 +02:00
Igor Pecovnik
668e764357 Backend - split upstream changes to beta and stable 2020-10-04 16:55:11 +02:00
rneese
7e2a245f08 making changed to build for apt flags
apt    install  --install- flags added
2020-10-02 11:06:17 -04:00
Richard Neese
5fcaa5fa3d fixing my patch
fixed a bug in my patch and changed nake out to put the desktop enviment at the end
2020-10-01 23:41:00 -04:00
Richard Neese
63517e0dd9 fixing patch for new name build 2020-10-01 23:24:20 -04:00
Richard Neese
fe98aa857a adding in $DESKTOP_ENVIROMENT setting on build name 2020-10-01 22:21:02 -04:00
Miouyouyou (Myy)
9860a5e0d2
Renaming "softwares" to "appgroups"
So that people clearly identify them as "apps", and not
just some random libraries... Though we still provide
GCC and Clang through this system...

We'll see if we go back to the old naming system on that
one.

Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
2020-09-27 02:38:08 +02:00