Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revisionBoth sides next revision
docs:guide-developer:the-source-code [2017/03/05 19:24] – move submission guidelines to its own page bobafetthotmaildocs:guide-developer:source-code:start [2021/08/01 10:51] – [OpenWrt source code repositories] avoid confusing domain name vgaetera
Line 1: Line 1:
-====== The LEDE Source Code ======+====== The OpenWrt source code ====== 
 +See also: [[docs:guide-developer:adding_new_device|Adding a new device]]
  
-The LEDE project source code starts off with OpenWrt revision r49258. The code is stored inside a git tree which contains all branches and releases ever made by OpenWrt. While importing the sources the tree was normalised and some minor tweaks were made to committer names and mail addresses.+The OpenWrt project source code is stored inside a git tree which contains all branches and releases ever made.
  
 All repositories can be browsed online through: All repositories can be browsed online through:
 +  - [[https://git.openwrt.org/|GitWeb]] - the master Git repository for OpenWrt
 +  - [[https://github.com/openwrt|GitHub]] - a continually-updated mirror of GitWeb
  
-  - [[https://git.lede-project.org/|Gitweb]] - the master Git repository for LEDE +===== OpenWrt source code repositories ===== 
-  - [[https://github.com/lede-project|Github]] - a continually-updated mirror of Gitweb+Any OpenWrt development happens in the main Git repository which is accessible via both HTTP and HTTPS:
  
- +<code bash
-===== LEDE Source Code Repositories ===== +git clone https://git.openwrt.org/openwrt/openwrt.git
- +
-Any //LEDE// development happens in the main ''%%source.git%%'' repository which is accessible via both HTTP and HTTPS: +
- +
-<code> +
-git clone https://git.lede-project.org/source.git+
 </code> </code>
  
-You can find a mirror of the repository on Github:+You can find a mirror of the repository on GitHub:
  
-<code> +<code bash
-git clone https://github.com/lede-project/source.git+git clone https://github.com/openwrt/openwrt.git
 </code> </code>
  
 ==== General source structure ==== ==== General source structure ====
- 
 These are the folders you can find in the project’s git: These are the folders you can find in the project’s git:
- 
   * **/config** : configuration files for menuconfig   * **/config** : configuration files for menuconfig
   * **/include** : makefile configuration files   * **/include** : makefile configuration files
Line 36: Line 32:
  
 ===== Releases ===== ===== Releases =====
- +Generating Releases has already been vastly automated. 
-Generating Releases has already been vastly automated. The remaining parts of the process need to also be automated before the first //LEDE// release. We will introduce a TESTERS file that is formatted similarly to the MAINTAINERS file of the kernel. Community members can list themselves as testers for a target/profile/device. Once a release has been generated testers should receive an email informing them of the requirement for images to be tested. It needs to be decided if only tested images should be included in the binary release.+The remaining parts of the process need to also be automated before the first //LEDE// release. 
 +We will introduce a TESTERS file that is formatted similarly to the MAINTAINERS file of the kernel. 
 +Community members can list themselves as testers for a target/profile/device. 
 +Once a release has been generated testers should receive an email informing them of the requirement for images to be tested. 
 +It needs to be decided if only tested images should be included in the binary release.
  
 Releases should: Releases should:
- 
   - Happen at least once a year   - Happen at least once a year
   - Have at least one maintenance update   - Have at least one maintenance update
Line 51: Line 50:
  
 ===== Staging Trees ===== ===== Staging Trees =====
 +To create yourself a staging tree on git.openwrt.org (does not apply to regular users):
  
-To create yourself a staging tree on git.lede-project.org:  +<code bash
- +ssh git@git.openwrt.org "create openwrt/staging/yournick" 
-<code> +ssh git@git.openwrt.org "desc openwrt/staging/yournick Staging tree of Your Name"
-ssh <git@git.lede-project.org"create lede/yournick/staging"  +
-ssh <git@git.lede-project.org"desc lede/yournick/staging Staging tree of Your Name"+
 </code> </code>
  
-To get your staging tree visible at https://git.lede-project.org:+To get your staging tree visible at https://git.openwrt.org:
  
-<code> +<code bash
-ssh <git@git.lede-project.org"perms lede/yournick/staging + READERS gitweb"+ssh git@git.openwrt.org "perms openwrt/staging/yournick + READERS gitweb"
 </code> </code>
  
 To get your staging tree read accessible to everyone: To get your staging tree read accessible to everyone:
  
-<code> +<code bash
-ssh <git@git.lede-project.org"perms lede/yournick/staging + READERS @all "+ssh git@git.openwrt.org "perms openwrt/staging/yournick + READERS @all"
 </code> </code>
  
 ==== Kernel updates ==== ==== Kernel updates ====
- +It has proven impractical and a waste of time to always be on the very latest kernel within 2 days of its release. 
-It has proven impractical and a time killer to always be on the very latest kernel within 2 days of its release. It has caused these issues. +It has caused the following:
   - diversification of kernel versions   - diversification of kernel versions
   - pressure on maintainers to constantly upgrade rather than stabilize   - pressure on maintainers to constantly upgrade rather than stabilize
Line 81: Line 78:
   - Upgrade to kernels that might not be fully tested   - Upgrade to kernels that might not be fully tested
  
-This is obviously not an invite to sit on ancient and dusty kernels. A sane path in between should be taken that give the community recent kernels without causing unnecessary workload and stability issues.+Obviously, this doesn't excuse old, dusty kernels. 
 +balanced path between the 2 should be taken that gives the community recent kernels without causing unnecessary workload and stability issues.
  
-There should be a max of three concurrent kernel version. Having only two concurrent versions is better than three. +There should be a max of three concurrent kernel versions. 
- +Having only two concurrent versions is better than three.
-In Short - stability should be valued higher than bleeding edge, although bleeding edge is also important, but not as a trade-off to stability. +
- +
-===== Reporting Bugs ===== +
-Please note: reporting a bug is important as it raises awareness of an issue, but it does not constitute a claim that anyone has to work on fixing it. +
- +
-Please report your bugs using our [[https://bugs.lede-project.org/|issue tracker]]\\  +
-When reporting bugs please make sure to: +
- +
-  * Name the tree/revision +
-  * Name the affected device +
-  * What does it do that it should not do / what does it not do that it should do +
-  * Steps to reproduce +
-  * What you have already done to fix the problem +
-  * Any additional info you thinks is important +
- +
-Remember, the better is your bug report, the more likely it is that it will be worked on. +
- +
-===== Adding a New Device ===== +
- +
-**[[docs:guide-developer:adding_new_device|Adding a new device]]** General information about adding a new device +
- +
-===== OpenWrt Source Code ===== +
- +
-We keep the original OpenWrt source code up to [[https://git.lede-project.org/?p=openwrt/source.git;a=commit;h=ee53a240ac902dc83209008a2671e7fdcf55957a|r49258]] available, mostly as reference and for historic interest. +
- +
-The original OpenWrt Subversion repository has been split up into several Git repositories mapping the various SVN directories and tags to proper Git branches. +
- +
-<code> +
-git clone https://git.lede-project.org/openwrt/source.git  +
-git clone https://git.lede-project.org/openwrt/packages.git  +
-git clone https://git.lede-project.org/openwrt/feeds.git  +
-git clone https://git.lede-project.org/openwrt/docs.git +
-</code>+
  
 +In short, stability should be valued higher than bleeding edge.
 +Bleeding edge is important, but not as a trade-off to stability.
  
  • Last modified: 2021/08/01 19:14
  • by vgaetera