Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DRAFT] Starting to document the new build system #125

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

@Miouyouyou
Copy link
Member

@Miouyouyou Miouyouyou commented Jan 12, 2021

Better late than never, but still almost too late for the
next release...
Anyway, this is the first draft about adding desktop
environments and appgroups.

The next step will be to document how to setup Debootstrap
and CLI packages lists.

Signed-off-by: Miouyouyou (Myy) myy@miouyouyou.fr

Better late than never, but still almost too late for the
next release...
Anyway, this is the first draft about adding desktop
environments and appgroups.

The next step will be to document how to setup Debootstrap
and CLI packages lists.

Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
@Miouyouyou Miouyouyou self-assigned this Jan 12, 2021
Miouyouyou added 2 commits Jan 12, 2021
Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
That said, there's actually a bug regarding this in the main
build system. I'll try to correct this ASAP.

Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
@igorpecovnik
Copy link
Member

@igorpecovnik igorpecovnik commented Jul 6, 2021

@AndreiCherniaev or anyone that have some spare time.

You might have a question how this works, but documentation is n/a, or in this unfinished stage, most of people is not faimiliar how it works ... If you need harder chellenge ;) and help us out a bit, this is it.

This merge request needs to be checked with reality - we have merged the code and we are using it to some degree. Things might be changed since and a few parts is known to miss: (last three commit comments), also this, perhaps something else. If you are not familiar with fixing this MR, open a new one.

@AndreiCherniaev
Copy link
Contributor

@AndreiCherniaev AndreiCherniaev commented Jul 6, 2021

Is is real to set ${BOARD} ${RELEASE} and others via hyperlink in armbian docs? User wants push to ${BOARD} and to see list. Look at me: I have got Orange Pi 4B (not just 4), my first question - what is ${BOARD}? May be orangepi4 or ORANGEPI4 or orange_pi_4_b ?

@igorpecovnik
Copy link
Member

@igorpecovnik igorpecovnik commented Jul 6, 2021

Changes between sub variants are small so in 99% we don't need to have different build targets for a, b or c. We / armbian maintainers define unique board name. Usually we just re-use hw vendor board naming.

@AndreiCherniaev
Copy link
Contributor

@AndreiCherniaev AndreiCherniaev commented Jul 7, 2021

  1. Changes between sub variants are small so in 99% we don't need to have different build targets for a, b or c. We / armbian maintainers define unique board name. Usually we just re-use hw vendor board naming.

Ok, but for Orange Pi 4 I think the first question of armbian user
-what is correct ${BOARD} ?
So may be armbian should provide full list of ${BOARD}s via hyperlink in docs?

  1. @Miouyouyou
    "The new build system allows you to have different minimal configurations, also called CLI configurations."
    But you can see desktop|cli|minimal versions. So cli != minimal... Or you suggest delete "minimal" configuration in new build system?
    cli also has got name "cli_minimal" [brain explosion].

  2. I use XFCE. I select "programming". Will build system installed /build/config/desktop/hirsute/appgroups/programming/custom/desktops/gnome/packages and /build/config/desktop/hirsute/appgroups/programming/custom/desktops/kde/packages ?

@AndreiCherniaev
Copy link
Contributor

@AndreiCherniaev AndreiCherniaev commented Jul 7, 2021

@AndreiCherniaev or anyone that have some spare time.

You might have a question how this works, but documentation is n/a, or in this unfinished stage, most of people is not faimiliar how it works ... If you need harder chellenge ;) and help us out a bit, this is it.

This merge request needs to be checked with reality - we have merged the code and we are using it to some degree. Things might be changed since and a few parts is known to miss: (last three commit comments), also this, perhaps something else. If you are not familiar with fixing this MR, open a new one.

First of all I want exclude cracklib. So I create
/home/a/Documents/myArmbians/8armbian/build/config/desktop/hirsute/environments/xfce/config_base/custom/boards/orangepi4/packages.remove file contains:
libcrack2 cracklib-runtime

Than I want minicom to be installed so I create /home/a/Documents/myArmbians/8armbian/build/config/desktop/hirsute/environments/xfce/config_base/custom/boards/orangepi4/packages file contains
minicom

But after build cracklib was in armbian! And no minicom!

My armbian build script
./compile.sh BOARD=orangepi4 BRANCH=current RELEASE=hirsute BUILD_MINIMAL=no BUILD_DESKTOP=yes KERNEL_ONLY=no KERNEL_CONFIGURE=yes COMPRESS_OUTPUTIMAGE=sha,gpg,img BSPFREEZE=yes REPOSITORY_INSTALL="" EXTERNAL=no EXTRAWIFI=no AUFS=no WIREGUARD=no INSTALL_KSRC=yes OFFLINE_WORK=yes BSPFREEZE=yes CREATE_PATCHES=yes

config_base.zip

@igorpecovnik
Copy link
Member

@igorpecovnik igorpecovnik commented Jul 7, 2021

First of all I want exclude cracklib. So I create

Start studying documentation, check logs and try again. You don't expect you will master build system in a few days or weeks? Also check support terms once again - you are deep in support area where you pay first, ask questions next - "personalised support". You can also help first and we will help you ... if we know and have time. On forum. Here on Github, we will ignore support. Here we only discuss R&D level issues.

@AndreiCherniaev
Copy link
Contributor

@AndreiCherniaev AndreiCherniaev commented Jul 7, 2021

@AndreiCherniaev or anyone that have some spare time.

You might have a question how this works, but documentation is n/a, or in this unfinished stage, most of people is not faimiliar how it works ... If you need harder chellenge ;) and help us out a bit, this is it.

This merge request needs to be checked with reality - we have merged the code and we are using it to some degree. Things might be changed since and a few parts is known to miss: (last three commit comments), also this, perhaps something else. If you are not familiar with fixing this MR, open a new one.

You ask me to test https://github.com/armbian or https://github.com/Miouyouyou/build/tree/armbian_desktop ? Last has got [ error ] It seems you ignore documentation and run an unsupported build system: hirsute .

P.S. Look at my another messages please.

@armbian armbian locked as off-topic and limited conversation to collaborators Jul 7, 2021
@Miouyouyou
Copy link
Member Author

@Miouyouyou Miouyouyou commented Jul 8, 2021

@AndreiCherniaev The documentation is clearly outdated on the custom/* parts, these parts have been moved to another folder that mimic an overlay system.

Try adding your packages.remove in config/optional/boards/${BOARD}/_config/desktop/hirsute/environments/xfce/ or config/optional/boards/${BOARD}/_config/desktop/hirsute/environments/xfce/config_base instead.

Worse case, try just adding packages.remove in config/desktop/hirsute/environments/xfce/config_base/ .

Also, is it your first time using the Armbian build scripts ?

This part of the documentation, along with these features, are targeted towards OEM implementors who mainly used scripts to generate the image, with commonly used variables, and tend to generate various images for different boards with the same scripts.
If you're only building for one platform, adding files in the environments directories should be faster.

${BOARD} is basically the name of the board selected in the configuration menu.
The list is also available in config/boards/ .

Indeed calling CLI configurations "minimal" is a misnomer.

Concerning CLI configurations :

  • cli_minimal will be used if you answer Image with console interface (server) -> Minimal image with console interface" during the configuration setup.
  • cli_standard will be used if you answer Image with console interface (server) -> Standard image with console interface
  • cli_desktop is only used to share CLI packages that are commonly used on all desktop platforms.

So the names are not that far-fetched.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants