Convert Figma logo to code with AI

coolsnowwolf logolede

Lean's LEDE source

30,604
19,585
30,604
746

Top Related Projects

An opensource OpenWrt variant for mainland China users.

Openwrt for Nanopi R1S R2S R4S R5S 香橙派 R1 Plus 固件编译 纯净版与大杂烩

A template for building OpenWrt with GitHub Actions | 使用 GitHub Actions 在线云编译 OpenWrt 固件

Quick Overview

Coolsnowwolf/lede is a fork of the OpenWrt project, which is a Linux operating system targeting embedded devices. This fork focuses on providing a customized version of OpenWrt with additional features, optimizations, and support for various network devices, particularly those popular in the Chinese market.

Pros

  • Includes additional packages and drivers not found in the official OpenWrt repository
  • Regular updates and active community support
  • Optimized for better performance on specific hardware platforms
  • Enhanced support for Chinese network equipment and services

Cons

  • May have stability issues compared to the official OpenWrt releases
  • Documentation is primarily in Chinese, which can be challenging for non-Chinese speakers
  • Some included packages may not adhere to open-source licensing requirements
  • Potential security risks due to the inclusion of third-party packages and modifications

Getting Started

To build the coolsnowwolf/lede firmware:

  1. Clone the repository:

    git clone https://github.com/coolsnowwolf/lede
    cd lede
    
  2. Update feeds and install them:

    ./scripts/feeds update -a
    ./scripts/feeds install -a
    
  3. Configure the build:

    make menuconfig
    
  4. Start the build process:

    make -j$(nproc)
    

After the build is complete, you can find the firmware images in the bin directory. Flash the appropriate image to your device following the specific instructions for your hardware.

Competitor Comparisons

An opensource OpenWrt variant for mainland China users.

Pros of ImmortalWrt

  • More frequent updates and active development
  • Broader device support, including newer and more diverse hardware
  • Enhanced security features and patches

Cons of ImmortalWrt

  • Potentially less stable due to rapid development cycle
  • May require more technical knowledge to configure and use effectively
  • Larger codebase, which can lead to increased complexity

Code Comparison

ImmortalWrt:

local sys = require "luci.sys"
local fs = require "nixio.fs"

function action_reboot()
    luci.template.render("admin_system/reboot", {
        title = translate("Reboot"),
        description = translate("Reboot the operating system of your device")
    })

LEDE:

local sys = require "luci.sys"
local fs = require "nixio.fs"

function action_reboot()
    luci.template.render("admin_system/reboot", {
        title = luci.i18n.translate("Reboot"),
        description = luci.i18n.translate("Reboot the operating system of your device")
    })

The code comparison shows minor differences in internationalization handling, with ImmortalWrt using a separate translate function, while LEDE uses luci.i18n.translate. This reflects ImmortalWrt's focus on broader language support and internationalization efforts.

Openwrt for Nanopi R1S R2S R4S R5S 香橙派 R1 Plus 固件编译 纯净版与大杂烩

Pros of nanopi-openwrt

  • Specifically optimized for NanoPi devices, potentially offering better performance on this hardware
  • More focused scope, which may result in a leaner and more efficient build for supported devices
  • Potentially easier setup process for NanoPi users due to its specialized nature

Cons of nanopi-openwrt

  • Limited device support compared to lede, which covers a broader range of hardware
  • Smaller community and potentially less frequent updates due to its more niche focus
  • May lack some features or packages available in the more comprehensive lede project

Code Comparison

Both projects are based on OpenWrt, so their core codebases are similar. However, there may be differences in device-specific configurations and optimizations. For example:

nanopi-openwrt:

CONFIG_TARGET_rockchip=y
CONFIG_TARGET_rockchip_armv8=y
CONFIG_TARGET_rockchip_armv8_DEVICE_friendlyarm_nanopi-r2s=y

lede:

CONFIG_TARGET_ramips=y
CONFIG_TARGET_ramips_mt7621=y
CONFIG_TARGET_ramips_mt7621_DEVICE_xiaomi_redmi-router-ac2100=y

These configuration snippets show how each project targets different devices and architectures, reflecting their distinct focus areas.

A template for building OpenWrt with GitHub Actions | 使用 GitHub Actions 在线云编译 OpenWrt 固件

Pros of Actions-OpenWrt

  • Utilizes GitHub Actions for automated builds, simplifying the compilation process
  • Provides pre-configured workflows for various OpenWrt versions and targets
  • Allows easy customization of firmware builds through configuration files

Cons of Actions-OpenWrt

  • Less comprehensive package selection compared to LEDE
  • May require more setup and configuration for advanced users
  • Limited direct community support and contributions

Code Comparison

Actions-OpenWrt workflow example:

name: Build OpenWrt
on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

LEDE Makefile example:

include $(TOPDIR)/rules.mk

PKG_NAME:=example
PKG_VERSION:=1.0
PKG_RELEASE:=1

Actions-OpenWrt focuses on automating the build process using GitHub Actions, making it easier for users to compile custom firmware without local setup. It offers pre-configured workflows and allows easy customization through configuration files.

LEDE, on the other hand, provides a more traditional OpenWrt build environment with a wider range of packages and more flexibility for advanced users. It has a larger community and more extensive documentation.

Actions-OpenWrt is ideal for users who want quick, automated builds with minimal setup, while LEDE is better suited for those who need more control over the build process and access to a broader package ecosystem.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

欢迎来到 Lean 的 LEDE 源码仓库

为国产龙芯 LOONGSON SoC loongarch64 / 飞腾 Phytium 腾锐 D2000 系列架构添加支持

I18N: English | 简体中文 | 日本語

官方讨论群

如有技术问题需要讨论或者交流,欢迎加入以下群:

  1. QQ 讨论群:Op 固件技术研究群,号码 891659613,加群链接:点击加入
  2. TG 讨论群:OP 编译官方大群,加群链接:点击加入

软路由 ArmSoM Sige 系列介绍

ArmSoM-Sige 系列:软路由、单板计算机、小型服务器与智能家居的全能之选。

商品介绍页面 - ArmSom 品牌店

购买链接:

sige1-zh

注意

  1. 不要用 root 用户进行编译
  2. 国内用户编译前最好准备好梯子
  3. 默认登陆IP 192.168.1.1 密码 password

编译命令

  1. 首先装好 Linux 系统,推荐 Debian 或 Ubuntu LTS

  2. 安装编译依赖

    sudo apt update -y
    sudo apt full-upgrade -y
    sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \
    bzip2 ccache clang cmake cpio curl device-tree-compiler flex gawk gcc-multilib g++-multilib gettext \
    genisoimage git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libfuse-dev libglib2.0-dev \
    libgmp3-dev libltdl-dev libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libpython3-dev \
    libreadline-dev libssl-dev libtool llvm lrzsz msmtp ninja-build p7zip p7zip-full patch pkgconf \
    python3 python3-pyelftools python3-setuptools qemu-utils rsync scons squashfs-tools subversion \
    swig texinfo uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev
    
  3. 下载源代码,更新 feeds 并选择配置

    git clone https://github.com/coolsnowwolf/lede
    cd lede
    ./scripts/feeds update -a
    ./scripts/feeds install -a
    make menuconfig
    
  4. 下载 dl 库,编译固件 (-j 后面是线程数,第一次编译推荐用单线程)

    make download -j8
    make V=s -j1
    

本套代码保证肯定可以编译成功。里面包括了 R24 所有源代码,包括 IPK 的。

你可以自由使用,但源码编译二次发布请注明我的 GitHub 仓库链接。谢谢合作!

二次编译:

cd lede
git pull
./scripts/feeds update -a
./scripts/feeds install -a
make defconfig
make download -j8
make V=s -j$(nproc)

如果需要重新配置:

rm -rf .config
make menuconfig
make V=s -j$(nproc)

编译完成后输出路径:bin/targets

使用 WSL/WSL2 进行编译

由于 WSL 的 PATH 中包含带有空格的 Windows 路径,有可能会导致编译失败,请在 make 前面加上:

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

由于默认情况下,装载到 WSL 发行版的 NTFS 格式的驱动器将不区分大小写,因此大概率在 WSL/WSL2 的编译检查中会返回以下错误:

Build dependency: OpenWrt can only be built on a case-sensitive filesystem

一个比较简洁的解决方法是,在 git clone 前先创建 Repository 目录,并为其启用大小写敏感:

# 以管理员身份打开终端
PS > fsutil.exe file setCaseSensitiveInfo <your_local_lede_path> enable
# 将本项目 git clone 到开启了大小写敏感的目录 <your_local_lede_path> 中
PS > git clone https://github.com/coolsnowwolf/lede <your_local_lede_path>

对已经 git clone 完成的项目目录执行 fsutil.exe 命令无法生效,大小写敏感只对新增的文件变更有效。

macOS 原生系统进行编译

  1. 在 AppStore 中安装 Xcode

  2. 安装 Homebrew:

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
  3. 使用 Homebrew 安装工具链、依赖与基础软件包:

    brew unlink awk
    brew install coreutils diffutils findutils gawk gnu-getopt gnu-tar grep make ncurses pkg-config wget quilt xz
    brew install gcc@11
    
  4. 然后输入以下命令,添加到系统环境变量中:

    • intel 芯片的 mac
    echo 'export PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"' >> ~/.bashrc
    echo 'export PATH="/usr/local/opt/findutils/libexec/gnubin:$PATH"' >> ~/.bashrc
    echo 'export PATH="/usr/local/opt/gnu-getopt/bin:$PATH"' >> ~/.bashrc
    echo 'export PATH="/usr/local/opt/gnu-tar/libexec/gnubin:$PATH"' >> ~/.bashrc
    echo 'export PATH="/usr/local/opt/grep/libexec/gnubin:$PATH"' >> ~/.bashrc
    echo 'export PATH="/usr/local/opt/gnu-sed/libexec/gnubin:$PATH"' >> ~/.bashrc
    echo 'export PATH="/usr/local/opt/make/libexec/gnubin:$PATH"' >> ~/.bashrc
    
    • apple 芯片的 mac
    echo 'export PATH="/opt/homebrew/opt/coreutils/libexec/gnubin:$PATH"' >> ~/.bashrc
    echo 'export PATH="/opt/homebrew/opt/findutils/libexec/gnubin:$PATH"' >> ~/.bashrc
    echo 'export PATH="/opt/homebrew/opt/gnu-getopt/bin:$PATH"' >> ~/.bashrc
    echo 'export PATH="/opt/homebrew/opt/gnu-tar/libexec/gnubin:$PATH"' >> ~/.bashrc
    echo 'export PATH="/opt/homebrew/opt/grep/libexec/gnubin:$PATH"' >> ~/.bashrc
    echo 'export PATH="/opt/homebrew/opt/gnu-sed/libexec/gnubin:$PATH"' >> ~/.bashrc
    echo 'export PATH="/opt/homebrew/opt/make/libexec/gnubin:$PATH"' >> ~/.bashrc
    
  5. 重新加载一下 shell 启动文件 source ~/.bashrc,然后输入 bash 进入 bash shell,就可以和 Linux 一样正常编译了

特别提示

  1. 源代码中绝不含任何后门和可以监控或者劫持你的 HTTPS 的闭源软件, SSL 安全是互联网最后的壁垒,安全干净才是固件应该做到的。

  2. 想学习 OpenWrt 开发,但是摸不着门道?自学没毅力?基础太差?怕太难学不会?跟着佐大学 OpenWrt 开发入门培训班助你能学有所成 报名地址:点击报名

  3. QCA IPQ60xx 开源仓库地址:https://github.com/coolsnowwolf/openwrt-gl-ax1800

  4. 存档版本仓库地址:https://github.com/coolsnowwolf/openwrt

捐贈

如果你觉得此项目对你有帮助,可以捐助我们,以鼓励项目能持续发展,更加完善

star