User Tools

Site Tools


devdocs:2_0_roadmap

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Previous revision
devdocs:2_0_roadmap [2018/07/08 19:02]
devdocs:2_0_roadmap [2018/09/15 15:52]
z5t1 [New Features to Add to Existing Packages]
Line 1: Line 1:
 +====== Cucumber Linux 2.0 Roadmap ======
  
 +===== Task Status Key =====
 +For simplicity and cleanliness sake, please use the following abbreviations for the status of tasks:
 +  * NS = Not Started
 +  * HW = Help Wanted
 +  * WIP = Work in Progress
 +  * DONE = Done/​Completed
 +
 +If the status is '​HW',​ that means we are seeking developers to help with it. If you would like to help with a task that is not listed as HW (Help Wanted) or already has a developer assigned, please contact that developer directly (see https://​cucumberlinux.com/​developers.php for developer contact info). Otherwise, please contact Scott (scott@cucumberlinux.com).
 +
 +====== Release Timeline ======
 +
 +This is a rough, working release timeline. It will be update become more detailed as the 2.0 development/​release cycle progresses.
 +  * June 2018
 +    * Active development begins
 +    * cucumber-2.0 branched off of cucumber-1.1.
 +  * January 2019
 +    * Cucumber Linux 2.0 released.
 +  * November 29, 2021
 +    * Cucumber Linux 2.0 End of Full Support.
 +  * March 1, 2022
 +    * Cucumber Linux 2.0 End of Life. 
 +
 +====== Major Changes ======
 +
 +===== Packages to Add and Remove in 2.0 =====
 +
 +==== New Packages to Build and Add ====
 +
 +^ Package ​       ^ Package Group               ^ Packager ​          ^ Status ​ ^ Details ​           ^
 +| LibreSSL ​      | net-base/​libressl ​          | Scott Court        | DONE   | We will be replacing OpenSSL with LibreSSL in Cucumber Linux 2.0 due to LibreSSL'​s superior security. |
 +| Meson          | dev-general/​meson ​          | Scott Court        | NS, HW  | This was added in LFS 8.1 and some packages have hinted that they will be transitioning to the ninja/meson build system. Xorg will be switching to ninja/meson in the next release, so this will be necessary to build future X servers. |
 +| Ninja          | dev-general/​ninja ​          | Scott Court        | NS, HW  | This was added in LFS 8.1 and some packages have hinted that they will be transitioning to the ninja/meson build system. Xorg will be switching to ninja/meson in the next release, so this will be necessary to build future X servers. |
 +| i3             | x-general/​i3 ​               | Maarten Hendrickx ​ | NS      | Why not? Everyone loves i3! |
 +| OpenBox ​       | x-general/​openbox ​          | Scott Court        | NS, HW  | This will complete our goal of adding three window managers: one that can completely stand alone well (WindowMaker),​ one basic windowing manager (OpenBox) and one tiling manager (i3). |
 +| Neovim ​        | base/​neovim ​                | Scott Court        | DONE   | We will be replacing Vim with Neovim in Cucumber Linux 2.0 since Neovim is more functional, modern and secure than Vim (and Neovim still maintains backwards compatibility with Vim). |
 +| qt5            | x-general/​qt5 ​              | Scott Court        | NS, HW  | More and more stuff is coming to depend on qt5 specifically,​ so we'll add it to satisfy those packages. |
 +| rustc          | dev-general/​rustc ​          | Scott Court        | DONE   | Firefox 60 ESR requires a Rust compiler to build. |
 +==== New Features to Add to Existing Packages ====
 +
 +^ Package ​       ^ Package Group               ^ Developer ​          ^ Status ​ ^ Details ​           ^
 +| GCC            | dev-base/​gcc ​               | None                | HW      | Enable Go support ​ |
 +| LLVM           | dev-general/​llvm ​           | None                | WIP     | Enable the Clang & Clang++ front ends |
 +
 +==== Packages to Import from the Extra or Testing groups ====
 +
 +These packages have already been built (or will have already been built) by the time we start building 2.0; however, they are not included in a base or general package group and are therefore not included on the installer and are not installed by default. This is a list of packages that will be moved into a mainline base or general group come Cucumber Linux 2.0.
 +
 +^ Package ​       ^ New Package Group           ^ Old Package Group           ^
 +| Pale Moon      | xapps-general/​palemoon ​     | xapps-extra/​palemoon ​       |
 +| Dovecot ​       | net-general/​dovecot ​        | net-extra/​dovecot ​          |
 +| OpenSMTPD ​     | net-general/​opensmtpd ​      | net-extra/​opensmtpd ​        |
 +| VSFTPD ​        | net-general/​vsftpd ​         | net-extra/​vsftpd ​           |
 +| mailx          | net-general/​mailx ​          | net-extra/​mailx ​            |
 +| libasr ​        | lib-general/​libasr ​         | lib-extra/​libasr ​           |
 +| libevent ​      | lib-general/​libevent ​       | lib-extra/​libevent ​         |
 +
 +
 +==== Packages to Remove ====
 +
 +^ Package ​       ^ Package Group               ^ Rationale ​                              ^
 +| OpenSSL ​       | net-base/​openssl ​           | We will be replacing OpenSSL with LibreSSL. |
 +| Vim            | base/​vim ​                   | We will be replacing Vim with Neovim. |
 +| Python 2       | lang-base/​python2 ​          | Python 2 will cease being supported at the end of 2019. |
 +
 +===== Core Package Updates =====
 +
 +^ Package ​                ^ Old Version (1.1)  ^ New Version (2.0)  ^
 +| **Kernel** |||
 +| base/​linux ​             | 4.9                | 4.14               |
 +| kernel/​linux-source ​    | 4.9                | 4.14               |
 +| **Toolchain** |||
 +| base/​glibc ​             | 2.23               | 2.27               |
 +| dev-base/​binutils ​      | 2.26               | 2.30               |
 +| dev-base/​gcc ​           | 5.3.0              | 7.3.0              |
 +| **Daemons** |||
 +| net-general/​dovecot ​    | 2.2                | 2.3                |
 +| net-general/​mariadb ​    | 10.1               | 10.3               |
 +| net-general/​rsync ​      | 3.1.2              | 3.1.3              |
 +| **Scripting Language Interpreters** |||
 +| lang-base/​perl ​         | 5.26               | 5.28               |
 +| lang-general/​php ​       | 7.2                | 7.3                |
 +| lang-base/​python3 ​      | 3.6                | 3.7                |
 +| **Libraries** |||
 +| base/​ncurses ​           | 6.0                | 6.1                |
 +| base/​readline ​          | 6.3                | 7.0                |
 +| net-base/​libressl ​      | N/A                | 2.7.3              |
 +| **Utilities** |||
 +| base/​coreutils ​         | 8.25               | 8.29               |
 +| net-base/​gnupg ​         | 2.1                | 2.2                |
 +
 +The rationale for these decisions is explained at [[https://​cucumberlinux.com/​~scott/​release_proposals/​|https://​cucumberlinux.com/​~scott/​release_proposals/​]].
 +
 +The full list of core packages can be found at the [[devdocs:​core_packages|Core Packages page]].
 +
 +====== Minor Changes/To Do List ======
 +
 +===== How to Read These Tables =====
 +
 +Here is a brief guide on how to read the tables below:
 +
 +  * #: A unique number to identify the task. Please increment this for each new task you add.
 +  * Description:​ A description of what needs to be done.
 +  * Status: The current status of this task. Please use the codes from [[devdocs:​2_0_roadmap#​task_status_key|Task Status Key]]
 +  * Developer(s):​ the developer(s) that have been assigned to this task.
 +
 +
 +===== Miscellaneous To Do List =====
 +
 +This is the to do list for miscellaneous development tasks for Cucumber Linux 2.0. For the general Cucumber Linux to do list, see the [[devdocs:​todo|To Do Page]].
 +
 +^   # ^ Status ​   ^ Developer(s) ​                ^ Description ^
 +|   1 | NS, HW    | Scott Court                  | Add multilingual support to the installer. |
 +|   2 | NS, HW    | Scott Court                  | Neaten up the installer and move configuration tasks into setup scripts. |
 +|   3 | NS        | Maarten Hendrickx ​           | Translate the installer into French. |
 +|   4 | NS        | Maarten Hendrickx ​           | Translate the installer into Dutch. |
 +|   5 | NS        | Scott Court                  | Add optional dependency resolution to Pickle. |
 +|   6 | NS        | Scott Court                  | Maybe add some way to do automatic updates? |
 +|   7 | NS        | Scott Court                  | Rewrite Pickle. |
 +|   8 | NS, HW    | Scott Court                  | Add file checksum and post installation package integrity verification to the package management system . |
 +|   9 | NS, HW    | Scott Court                  | Add support for doinstonly.sh and doupgradeonly.sh to pkgtools. Also make installpkg/​upgradepkg run the setup.* scripts. |
 +|  10 | DONE      | Scott Court                  | Make a 4.14 kernel configuration and update the kernel to 4.14. |
 +|  11 | DONE      | Maarten Hendrickx ​           | Update the toolchain and test it. |
 +|  12 | DONE      | Maarten Hendrickx ​           | Make an automated system for building the Linux from Scratch chapter 5 environment. |
 +|  13 | WIP       | Everyone ​                    | Convert the Cucumber 1.x buildscript to Cucumber 2.x buildinfo files. See assignments/​progress [[https://​docs.google.com/​spreadsheets/​d/​1wz0QenLKYio_4zqJZsloEqlsXk5LfBrb34N6jiZ60eQ/​edit#​gid=0|here]]. |
 +|  14 | WIP       | Everyone ​                    | Update packages to new versions. See assignments/​progress [[https://​docs.google.com/​spreadsheets/​d/​1wz0QenLKYio_4zqJZsloEqlsXk5LfBrb34N6jiZ60eQ/​edit#​gid=0|here]]. |
devdocs/2_0_roadmap.txt ยท Last modified: 2018/09/15 15:52 by z5t1