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

Armbian desktop #2776

Closed
wants to merge 13 commits into from
Closed

Commits on Jan 5, 2021

  1. Dockerfile: Fix uuidgen not found during build

    By adding uuid-runtime to the list of packages to install.
    
    Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
    Miouyouyou committed Jan 5, 2021
    Configuration menu
    Copy the full SHA
    8e3b909 View commit details
    Browse the repository at this point in the history
  2. Refactor: Starting to remove duplicated code for list cleanup

    That way we can use ONE function that actually works for
    cleaning lists.
    This list cleanup function lets people format their packages
    lists like they want (spaces, tabs, carriage returns), making
    them easier to maintain.
    
    Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
    Miouyouyou committed Jan 5, 2021
    Configuration menu
    Copy the full SHA
    35518fb View commit details
    Browse the repository at this point in the history

Commits on Jan 6, 2021

  1. Refactor: A bit more cleanup

    Now, the code should start to be "readable" in configuration.sh,
    while providing the abilities to setup packages files with tabs,
    spaces, carriages returns and anything that can be recognized as
    a "space" character.
    
    Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
    Miouyouyou committed Jan 6, 2021
    Configuration menu
    Copy the full SHA
    1af2331 View commit details
    Browse the repository at this point in the history

Commits on Jan 15, 2021

  1. configuration: coherent board subdirs paths for CLI and Deboostrap

    So now we have :
    * debootstrap
    * debootstrap/custom/boards/${BOARD}
    * debootstrap/config_${CONFIG_SELECTED}
    * debootstrap/config_${CONFIG_SELECTED}/custom/boards/${BOARD}
    
    * main
    * main/custom/boards/${BOARD}
    * main/config_${SELECTED_CONFIGURATION}
    * main/config_${SELECTED_CONFIGURATION}/custom/boards/${BOARD}
    
    Which is coherent with how board specific subdirs work with
    Desktop environments and appgroups.
    
    Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
    Miouyouyou committed Jan 15, 2021
    Configuration menu
    Copy the full SHA
    1c49ac5 View commit details
    Browse the repository at this point in the history

Commits on Jan 20, 2021

  1. configuration: Fixed Debootstrap packages concat and PACKAGE_LIST_RM

    The aggregation of Debootstrap packages list should not glue packages
    names together now.
    
    Also the PACKAGE_LIST_RM content will be added to the packages.remove
    files content, instead of being overwritten by them.
    
    Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
    Miouyouyou committed Jan 20, 2021
    Configuration menu
    Copy the full SHA
    229fc45 View commit details
    Browse the repository at this point in the history

Commits on Feb 14, 2021

  1. Configuration menu
    Copy the full SHA
    eae9184 View commit details
    Browse the repository at this point in the history

Commits on Feb 18, 2021

  1. new_builder: Sourcing files from config/optional

    This is still quite untested, since each test take roughly an hour
    to execute. I'm currently retesting the addition of APT sources,
    since the functions used have been modified.
    Still, so far, it seems to works.
    
    Anyway, the system has been modified to avoid, at much as possible,
    the duplication of build related files, and put everything related
    to specific boards inside a directory located at config/optional,
    instead of putting this as a custom/boards subdirectory inside
    desktop environments and appgroups.
    
    So now, the base directories used to source build files are :
    
    	${SRC}/config
    	${SRC}/config/optional/_any_board/_configs
    	${SRC}/config/optional/architectures/${ARCH}/_config
    	${SRC}/config/optional/families/${LINUXFAMILY}/_config
    	${SRC}/config/optional/boards/${BOARD}/_config
    
    New subfolders have been added, to reduce the duplication :
    
    * desktop/_all_distributions, cli/_all_distributions
      Sourced for all distributions, which should make it easier to
      put build files that are directly linked to any distribution
      (wallpapers packages, for example)
    * desktop/${RELEASE}/environments/_all_environments,
      desktop/_all_distributions/environments/_all_environments
      When building for desktop, this is sourced for any desktop
      environment used.
    
    With these additions, if you're building a desktop image, with
    XFCE "base" as your default desktop environment, the system
    will look for 'packages' files in these different paths :
    
    config/desktop/_all_distributions/environments/_all_environments/packages
    config/desktop/_all_distributions/environments/xfce/packages
    config/desktop/_all_distributions/environments/xfce/config_base/packages
    config/desktop/focal/environments/_all_environments/packages
    config/desktop/focal/environments/xfce/packages
    config/desktop/focal/environments/xfce/config_base/packages
    config/optional/_any_board/_configs/desktop/_all_distributions/environments/_all_environments/packages
    config/optional/_any_board/_configs/desktop/_all_distributions/environments/xfce/packages
    config/optional/_any_board/_configs/desktop/_all_distributions/environments/xfce/config_base/packages
    config/optional/_any_board/_configs/desktop/focal/environments/_all_environments/packages
    config/optional/_any_board/_configs/desktop/focal/environments/xfce/packages
    config/optional/_any_board/_configs/desktop/focal/environments/xfce/config_base/packages
    config/optional/architectures/arm64/_config/desktop/_all_distributions/environments/_all_environments/packages
    config/optional/architectures/arm64/_config/desktop/_all_distributions/environments/xfce/packages
    config/optional/architectures/arm64/_config/desktop/_all_distributions/environments/xfce/config_base/packages
    config/optional/architectures/arm64/_config/desktop/focal/environments/_all_environments/packages
    config/optional/architectures/arm64/_config/desktop/focal/environments/xfce/packages
    config/optional/architectures/arm64/_config/desktop/focal/environments/xfce/config_base/packages
    config/optional/families/rockchip64/_config/desktop/_all_distributions/environments/_all_environments/packages
    config/optional/families/rockchip64/_config/desktop/_all_distributions/environments/xfce/packages
    config/optional/families/rockchip64/_config/desktop/_all_distributions/environments/xfce/config_base/packages
    config/optional/families/rockchip64/_config/desktop/focal/environments/_all_environments/packages
    config/optional/families/rockchip64/_config/desktop/focal/environments/xfce/packages
    config/optional/families/rockchip64/_config/desktop/focal/environments/xfce/config_base/packages
    config/optional/boards/nanopct4/_config/desktop/_all_distributions/environments/_all_environments/packages
    config/optional/boards/nanopct4/_config/desktop/_all_distributions/environments/xfce/packages
    config/optional/boards/nanopct4/_config/desktop/_all_distributions/environments/xfce/config_base/packages
    config/optional/boards/nanopct4/_config/desktop/focal/environments/_all_environments/packages
    config/optional/boards/nanopct4/_config/desktop/focal/environments/xfce/packages
    config/optional/boards/nanopct4/_config/desktop/focal/environments/xfce/config_base/packages
    
    That said, currently the configuration files that were put inside
    custom/boards subdirectories are still not transferred to the new
    directories.
    This will be done in the next commit.
    
    Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
    Miouyouyou committed Feb 18, 2021
    Configuration menu
    Copy the full SHA
    df024ce View commit details
    Browse the repository at this point in the history

Commits on Feb 19, 2021

  1. new_builder: Moved custom/boards scripts to their new places

    The paths... are getting longer actually, which isn't a good thing.
    But I wanted to keep the same directory structure "config/desktop"
    and "config/cli" structure inside the arch, families and boards
    specific directories.
    
    Anyway, the scripts are now factorized in single specific locations,
    which reduce the amount of copy-paste and errors appearing here and
    there.
    
    That said, this remains to be actually tested, since I don't have
    a Pinebook Pro.
    
    Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
    Miouyouyou committed Feb 19, 2021
    Configuration menu
    Copy the full SHA
    c45d1e6 View commit details
    Browse the repository at this point in the history
  2. new_builder: Tested and approved... on Nano PC T4 only

    I don't have a Pinebook anyway, so yeah.
    
    Still, this works and this should allow maintainers to
    put all the files related to a specific board builds,
    in various specific folders, located in config/optional .
    
    Note that you can actually put any file in the various
    config/optional/{architectures,families,boards} subdirectories.
    The subdirectory _config is named like this to avoid any
    name conflict with other directories you might add.
    So, for example, inside config/optional/boards/nanopct4,
    you can add a subdirectory named 'desktop_skels' and
    copy you various desktop default configurations from this
    subdirectory.
    I still leave the layout of these subdirectories up to
    the various maintainers. The only subdirectory that is
    actually sampled by the build scripts is "_config".
    
    Additional package for appgroups, that are dependent of the
    selected desktop environment, are now sampled from :
    
    * desktop/_all_distributions/environments/${DESKTOP_ENVIRONMENT}/appgroups
    * desktop/${RELEASE}/environments/${DESKTOP_ENVIRONMENT}/appgroups
    
    This makes it easier to understand what packages will be
    installed when selecting a desktop environment, instead of
    having to check each individual appgroup subdirectory.
    So everything related to a specific desktop environment stays
    in its folder.
    
    This change leads to 'custom' subdirectories being entirely useless,
    which means that you should remove them now.
    
    Anyway, I'm sure there are still parts I haven't checked,
    so feel free to play with this and give it a try.
    
    Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
    Miouyouyou committed Feb 19, 2021
    Configuration menu
    Copy the full SHA
    258ced2 View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2021

  1. Merge branch 'desktop-march' of https://github.com/armbian/build into…

    … armbian_desktop
    
    Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
    Miouyouyou committed Mar 18, 2021
    Configuration menu
    Copy the full SHA
    84161a0 View commit details
    Browse the repository at this point in the history

Commits on Mar 26, 2021

  1. BSP Desktop : Preliminary support for the BSP Desktop package

    The whole idea is to split the current Armbian desktop packages,
    in order to avoid having Board Specific data into the common
    Armbian desktop package. This avoids having to update the package,
    everytime a board needs a new desktop specific configuration file,
    or whatever.
    And it's cleaner anyway, desktop package should not contain
    configuration files for niche boards.
    
    Currently, this sample files from debian/armbian-bsp-desktop/
    folders inside config/desktop/${RELEASE}/{appgroups,environments}/*/
    .
    
    The next step will be to move every board specific script
    instruction, from the armbian-desktop preparation scripts,
    to the armbian-bsp-desktop-${BOARD} preparation script.
    
    Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
    Miouyouyou committed Mar 26, 2021
    Configuration menu
    Copy the full SHA
    7eac834 View commit details
    Browse the repository at this point in the history

Commits on Mar 30, 2021

  1. BSP Desktop : Importing previous board specific scripts

    The whole idea will be to avoid sampling armbian-desktop
    preparation scripts from the config/optional folders, as much
    as possible, since the armbian-desktop package isn't supposed
    to contain any board specific data anyway.
    
    Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
    Miouyouyou committed Mar 30, 2021
    Configuration menu
    Copy the full SHA
    c2b18a7 View commit details
    Browse the repository at this point in the history

Commits on Apr 16, 2021

  1. BSP Desktop : Dumbing down the file management

    The whole idea is to put all the "desktop" related board
    specific files in the following directories :
    
     * ${SRC}/packages
     * ${SRC}/config/optional/_any_board/_packages
     * ${SRC}/config/optional/architectures/${ARCH}/_packages
     * ${SRC}/config/optional/families/${LINUXFAMILY}/_packages
     * ${SRC}/config/optional/boards/${BOARD}/_packages
    
    The directories content are then copied, in order, inside the
    armbian-bsp package content, specific files overwriting more
    generic files when applicable.
    
    This should make the management of boards specific files easier.
    
    The packages are still customizable by placing :
    * debian/armbian-bsp-desktop/prepare.sh
    * debian/armbian-bsp-desktop/postinst
    files inside environments and appgroups configurations, just in
    case you need that extra level of customization.
    I hope not. The more you go "fine-grained" customization, the
    more difficult it is to manage the whole thing actually.
    
    Signed-off-by: Myy Miouyouyou <myy@miouyouyou.fr>
    Miouyouyou committed Apr 16, 2021
    Configuration menu
    Copy the full SHA
    3be8a74 View commit details
    Browse the repository at this point in the history