1 Star 14 Fork 62

skymysky / Tmoe-linux

forked from Moe / TMOE
暂停
 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
GPL-2.0

🍭Tmoe-linux

若无法加载 readme,则请手动打开使用说明

介绍

🍭Without any basic knowledge of linux shell,🍹 you can run GNU/Linux on your android phone and windows PC, and you can easily install a graphical desktop environment and configure pulseaudio server.✨ You can also run Gentoo, Arch and other systems in WSL.

GNU/Linux 上一键安装 GNU/Linux chroot 容器。
Android Termux 上一键安装 GNU/Linux proot 容器。

🍸 目前支持的容器: Supported containers:

  • Debian buster/sid

  • Ubuntu 20.04

  • Kali rolling

  • Arch

  • Fedora 31

  • CentOS 8

  • Gentoo

  • Funtoo

  • Alpine edge

  • OpenSUSE tumbleweed

  • Void

  • Raspbian buster

  • Mint tricia

  • Devuan ascii

  • Slackware

  • Armbian

    ✨ 支持自动配置中文环境,并执行其它优化步骤。🍹 配置和优化步骤仅适用于 Debian、Ubuntu、Kali、Arch、Fedora 和 Gentoo(x64)。 All configuration and optimization steps only apply to Debian,Ubuntu,Kali,Fedora and Arch.

Capture__2020-02-16-02-23-49.png

支持一键安装图形界面。 Support one-key installation Graphical User Interface.

截图_2020-02-01_08-53-21.jpg

🍸 Supported GUI/DE 目前支持的桌面环境:
(仅部分系统支持)

  • xfce4
  • lxde
  • mate
  • lxqt
  • kde plasma 5
  • cinnamon
  • gnome 3
  • deepin desktop

注 1:Only some systems support desktop environment installation.
仅部分系统支持
注 2:Prioritize XFCE
优先适配 xfce
注 3: 未打勾的选项在容器/远程桌面环境下存在一些问题
Some desktops may not display properly through the remote desktop

1.Arch + Deepin desktop 在 VNC 下会黑屏
下图的 Arch 是运行在 debian 里的 chroot 容器。 Snipaste_2020-04-12_05-09-13.png
2.如下图所示,Debian sid + KDE Plasma 5 转发 X11 后,窗口显示会出现问题。
注:在 RDP 下此问题未复现 Snipaste_2020-04-12_07-28-58.png

支持的架构 Supported architecture

Debian 容器支持 arm64(aarch64)、armhf、armel、amd64(x86_64) 、i386(x86)、s390x 和 ppc64el

可以支持,但不想支持的是 mipsel In addition, the mipsel architecture is also supported! The developer has tested it on the router

2020-03-24 已经支持 mipsel 架构了!(已经在路由器上测试过了 🍥)

可能支持 RISC-V (靠理论知识写出来的,未实际测试。由于现在暂时无法构建 risc-v 的基础容器镜像,故只能靠 qemu 在 risc-v 的设备上模拟其它架构的系统。)

这可能是你见过的为数不多的,全架构 、全平台 项目。 (win10 仅支持 wsl,不是全平台)

Containers other than debian may only support mainstream architectures, not s390x and ppc64el. 其它系统容器可能只支持主流的 amd64、arm64 等架构,不支持 s390x 和 ppc64el 等冷门架构。

不同平台的安装教程 Installation tutorials for different platforms

You can run this tool not only on Android, but also on GNU/Linux.

您不仅可以在 Android 手机上运行本工具,亦可在 GNU/Linux 上运行。

1.Windows10

Tutorial(教程):
我不知道怎么用
Q:I don't know how to use it?
以admin身份运行powershell
A:Run PowerShell as an administrator and enter the following command.

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

After restarting the system, run powershell again as an administrator, then press the following command.
重启系统后再次以管理员身份运行 powershell ,然后输

wsl --set-default-version 2

enable
store
若无法连接Microsoft Store,那么也可以手动安装。
请从以下三者中选择:
Debian
Kali
Ubuntu

打开子系统,然后根据提示更新 WSL2 的 linux 内核。更新完成后,当提示输普通账号用户名时,直接关掉窗口。

注:这样子默认就是 root 账号,可以省下输 sudo 密码的步骤,之后可以使用 adduser 命令来单独增加普通账号。默认以非管理员身份运行的子系统 root 账号并没有 windows 管理员权限哦!只拥有 linux 的 root 权限而已,要是以管理员身份运行子系统的话,就真的要谨慎操作了。PC 用 root 账号的问题不大,又不是服务器。

重新打开子系统,然后输

    sudo apt update
    sudo apt install -y curl
    bash -c "$(curl -L gitee.com/mo2/linux/raw/master/debian.sh)"

若已经为 root 用户,则可以去掉 sudo。

最后按方向键和回车键进行操作。

注:WSL 请选择安装工具

你这个小可爱
不可以骂人家
并没有在说你
01
02
03 04
05

后期注:建议 WSL 用户直接安装 gui ,不要在里面先套娃安装 chroot 容器,再装 gui,因为这将导致 windows 程序调用失败。

停止VNC
stopvnc
06
07
08
09
10
11
12

14
perfect

2.Android-Termux

1.安装安卓版TermuxTermux:api
2.打开 termux,输入以下命令

    bash -c "$(curl -Lv gitee.com/mo2/linux/raw/master/debian.sh)"

3.如需使用 gui,可能还需要安装 VNC apk,您可以前往 Google play 或使用 Tmoe-linux 的 debian-i 来下载。
注:web 端的 novnc 无需安装 apk,但触控操作体验不佳。

3.Debian/Ubuntu/Mint/Kali/Deepin/Devuan/MX 等 deb 系发行版

    sudo apt update
    sudo apt install -y curl
    bash <(curl -L gitee.com/mo2/linux/raw/master/debian.sh)

4.RedHat/Fedora/CentOS

    dnf install -y curl || yum install -y curl
    bash -c "$(curl -Lv https://gitee.com/mo2/linux/raw/master/debian.sh)"

5.Arch/Manjaro

    pacman -Syu --noconfirm curl
    bash -c "$(curl -Lv https://gitee.com/mo2/linux/raw/master/debian.sh)"

6.OpenWRT/Entware

    opkg update
    opkg install libustream-openssl ca-bundle ca-certificates wget bash
    bash -c "$(wget --no-check-certificate -O- https://gitee.com/mo2/linux/raw/master/debian.sh)"

7.Alpine

    apk update
    apk add wget bash
    wget -O /tmp/.debian.sh https://gitee.com/mo2/linux/raw/master/debian.sh
    bash /tmp/.debian.sh

8.Void

    xbps-install -S
    xbps-install -y wget
    bash -c "$(wget -O- https://gitee.com/mo2/linux/raw/master/debian.sh)"

9.Gentoo/Funtoo

    emerge -avk net-misc/wget
    bash -c "$(wget -O- https://gitee.com/mo2/linux/raw/master/debian.sh)"

10.其它 system 未测试,以下系统请自行解决依赖关系

例如:OpenSuseGuixSD等发行版。

相关依赖为 git aria2 pv wget curl grep procps less tar xz newt(whiptail)


使用说明

简易版说明(萌新专用)

  • 1.安装 Tmoe GNU/Linux 管理工具的命令(仅支持在原系统内输)
bash -c "$(curl -Lv https://gitee.com/mo2/linux/raw/master/debian.sh)"

进入工具后,按方向键和回车键进行操作,基本上所有操作都有提示。

Snipaste_2020-03-20_17-10-48.png

  • 2.启动命令(仅支持在原系统内输)
debian
  • 3.卸载命令(仅支持在原系统内输)
debian-rm
  • 4.启动工具箱(同时支持,但管理的内容不同)
debian-i
  • 5.启动 vnc 命令(同时支持)
startvnc
  • 6.停止 vnc 命令(同时支持)
 stopvnc

完整版说明(Full description)

Step1. Install GNU/Linux container

1-1. You can use the following command to install Tmoe GNU/Linux tool

安装 Tmoe GNU/Linux 管理工具的命令是

apt update
apt install -y wget
bash -c "$(wget -O- https://gitee.com/mo2/linux/raw/master/debian.sh)"

(旧版)视频教程链接 提取码: debb

1-2.安装后的步骤

If you want to start GNU/Linux next time, you can just type debian.
下次启动 GNU/Linux 的命令是
debian

关于 GNU/Linux 的重新安装与移除

debian-i 启动工具箱,并自行选择重装和其它选项。 您也可以手动输debian-rm来移除已经安装的 GNU/Linux 容器。

Step2.安装图形化桌面环境

2-1.安装前(关于桌面环境的安装与卸载)

进入 GNU/Linux 容器后,请从 xfce、lxde、mate 中选择一种。

gnomekde 是用来卖萌用的,不要安装。如需安装,请自行解决依赖关系和其它问题。 四选一!千万不要一下子装两个桌面!

后期注:KDE 已经在 chroot 环境中测试成功,但由于操作流畅度堪忧,且存在 bug,故和 lxqt 一样移除了支持,但您仍然可以使用主目录下的脚本进行安装。

2-2.安装中

安装过程会提示选择键盘布局,请直接按回车。 初次启动 vnc 服务,会提示输 6 至 8 位(不可见)的密码,输两遍。

当提示 Would you like to enter a view-only password ?
n

2-3.安装后

startvnc启动 vnc 服务, 输stopvnc停止 vnc 服务。 完成后,打开 vnc viewer 客户端,输 localhost:5901

其它说明

  • 1.若无法退出 GNU/Linux 容器,则请在原系统内输stopvnc
  • 2.若 zsh 配置失败,则请输./zsh.sh进行重新配置。
  • 3.主目录下的 sh 文件可以删除,但 sd、tf 和 termux 三个目录不要删
  • 因为这三个目录挂载了设备存储空间,分别和内置存储、tf 卡(termux 专有目录)以及 termux 主目录联动。

可选步骤

1.修改 vnc 分辨率的方法
  • 1-1.工具修改

在 GNU/Linux 容器内输debian-i打开工具箱,然后选择相关选项,需要注意的只有一点,x 为英文小写,不是乘号。

  • 1-2.手动修改
apt install -y nano
nano $(which startvnc)

1440x720(竖屏)改成你需要的分辨率,例如 1920x10780(横屏) 修改完成后,按Ctrl+S 保存,Ctrl+X退出。

2.你可以装个浏览器来玩玩

./firefox.sh安装 firefox 浏览器,输./firefox.sh rm卸载

chromium 浏览器的启动命令是 chromium --no-sandbox

相关软件的安装选项已经整合进debian-i


更新日志

2019-11、12 月

本文首发于酷安网@萌系生物研究员 旧版脚本部分命令借鉴了 atilo-cn 和 AnLinux,除此之外,大部分都是本人手打的。 可能会有出错的地方,欢迎指正。

后期注:Anlinux 的脚本有些地方写得并不好,并且我知道它存在的某些缺陷。反正原作者也看不到,所以我在这里调侃也没事。😹 你去了解更本质的东西就知道哪些地方写得不好了!`(>﹏<)′ 相比之下,Linux Deploy 的开发者写的东西要比他强很多。

2020-02-15

完全重写脚本! 和别人写的脚本已经完全不一样了,重点不在于安装的方式,而在于配置优化以及与安卓原系统的联动,难点在于一些鬼点子。

本来是不想维护的,但是我发现了一个很严重的 bug,所以干脆重写一遍。 本次更新的内容真的有点多,而且真的很强哦 ✨ ο(=•ω <=)ρ⌒☆,我自己都觉得太强了! 脚本文件已经达到了 40 多 KB 了。

2020-02-15 更新内容
  • 1.获取镜像途径依旧是清华镜像站,但把下载工具从 wget 换成了 aria2,从原本的单线程变成现在的 16 线程,加快了下载速度。

  • ​ 2.自动配置中文环境,默认就是中文,无需手动配置。

  • ​ 3.修复旧版脚本中非 xfce 桌面的 xstartup 文件问题。

  • ​ 4.新增自动配置 zsh 的功能,初次启动会出现提示,若在指定时间内无操作会自动开始安装并配置 zsh。

  • ​ 包含主题和语法高亮、语法历史记录插件。

  • ​ 5.简化安装流程,且不再需要某种很神奇的 internet 工具。

  • ​ 6.将 debian 10 buster (stable)换成 sid bullseye(unstable),滚动升级,一直都是新版。

  • ​ 7.修复 chromium 浏览器的启动问题,使用 ./chromium.sh 安装的版本,可以直接点击图标启动,在 root 环境下无需加--no-sandbox 参数。

  • ​ 8.加入对 armhf 和 x86_64(amd64)的支持。

  • ​ 9.支持一键更换为 kali 源,debian 变身 kali 就是这么简单!

  • ​ 10.简化卸载流程,安装脚本也可以执行卸载操作。

  • ​ 11.根据当前 linux shell 环境自动修改 proot 启动脚本。

  • ​ 12.修复启动 vnc 后,debian 无法正常关闭的 bug ,(请在 termux 原系统内输 stopvnc)

  • ​ 13.简化启动流程,你可以在 termux 原系统里输 startvnc 来启动 debian+vnc 客户端

  • ​ 14.vnc 支持自动获取本机局域网 ip,地址格式类似于 192.168.123.3:5901


之后的更新内容真的是太多了,有空的话会从酷安原帖搬过来的。其中最突出的更新内容是将安装 gui 和其它软件、管理远程桌面配置等内容整合在 GNU/Linux 容器内的 debian-i 里,以及修复了 VNC 音频传输中可能存在的一些问题。 2020-04-29 注:包含更新日志的帖子已被酷安删除,由于超过 2 周时间,故无法恢复。


2020-02-16 至 2020-03-22 的更新日志待补


2020-03-23 更新日志

本次更新专注于用户体验方面的优化。

  • 1.zsh 加入新插件:aloxaf开发的fzf-tab
    这是一款非常出色的补全插件! Snipaste_2020-03-24_07-48-22.png

  • 2.将默认主题更换为 powerlevel 10k,并同时修复 termux 和 xfce4 终端的字体显示问题。

  • 3.加入 Command-not-found 插件。
    当您未安装相关软件时,输入的是错误的命令。例如输 sshd 时,会出现apt install openssh-server的提示,而不是单纯的显示:Command not found.

后期注:宿主机为 OpenWRT 的路由器,不会加载上述部分插件,且默认主题非 p10k。

2020-03-24 更新日志
  • 1.支持 mipsel 架构,已在路由器上测试过了。

Snipaste_2020-03-24_05-36-44.png

  • 2.尝试让 RISC-V 架构的设备能运行 debian 容器,需要宿主机原系统为 deb 系。 当检测到设备为 riscv 架构时,将下载 arm64 架构版的容器镜像。 调用 qemu+chroot 来实现跨 CPU 架构运行容器,这是一个理论性操作,未实际测试。
2020-03-25 更新日志
  • 1.在 iOS 13.3 上发现致命 bug,不再对 iOS-iSH 提供支持。
  • 请勿在苹果 iOS 设备上使用本脚本!
  • 注:iSH为苹果 iOS 上的 Alpine Linux i686 模拟器。
2020-03-26 更新日志
  • 1.全面适配 WSL2 (第二代 windows 的 linux 子系统)
  • 注:在 WSL1 中出现严重 bug,但在 WSL2 中却没有复现。
  • 1-1.输startxsdl能同时启动 windows 的 X 服务
  • 1-2.支持 WSL 的音频传输
  • 2.修复 novnc 在非 Android 系统上重复安装的问题
  • 3.在软件商店中加入了网易云音乐和百度网盘
2020-03-27 至 2020-04-01 更新日志
  • 1.加入测试功能,可在工具内手动安装输入法(如 sunpinyin 和 sogou-pinyin)、电子书阅读器、视频剪辑(openshot)、数字绘图(krita)、社交应用(如 Wechat 和 Telegram) 等等。
  • 2.全面优化 Windows 平台的 pulseaudio(音频传输)服务
  • 3.对于 WSL 的常见问题,给出了解决方案,部分内容还附有截图。
  • 4.加入了修复度盘客户端无法打开的功能

对 WSL2 的支持已经称得上完善了!
最关键的地方在于脚本大量调用了 win10 原系统的程序。
在 win10 2004 下同时运行 linux 和 windows 程序的预览截图GlyxZ8.png
WSL2 与宿主机原系统(win10)的交互联动要比普通虚拟机强数倍,在 linux 子系统下可以直接调用 powershell.exe 等 windows 程序。
如上图所示,目前已经可以接近完美地将 win10 和 GNU/Linux 融为一体。

2020-04-02 更新日志
  • 1.支持非 root 用户配置 vnc 服务
  • 2.修复大量 bug
2020-04-10 更新日志
  • 1.加入测试版容器 arch,fedora,centos.raspbian,mint 等等
2020-04-11 更新日志
  • 1.加入测试版桌面 lxqt,kde,gnome 等。
  • 2.除 deb 系外,还支持给其它发行版安装 gui。
  • 3.支持修复 vnc 闪退。
  • 注 1:由于在这几天的更新中给所有的桌面都加入了 dbus-launch,故在部分安卓设备的 Proot 容器上出现了兼容性问题,容易造成不稳定的状况。
  • 注 2:该操作在 linux 虚拟机及 win10 子系统上没有任何问题
  • 注 3:在最新更新的版本(容器安装方式)中已加入检测功能,理论上不会再出现此问题。你也可以在更新 debian-i 后,单独进行修复。
2020-04-12 更新日志
  • 1.支持切换 VNC 音频传输方式。
2020-04-13 至 2020-04-19 更新日志
  • 1.优化并适配 Arch,Fedrora 系统
  • 2.Gentoo 和 OpenSUSE 仅优化 x64 版
  • 3.加入更多发行版的容器,例如 Slackware,Armbian 等
2020-04-20 更新日志
  • 1.支持安装其它版本的 VSCode,包括 VS Codium,VS Code OSS,以及官方版的 VScode。
  • 自动识别除 i*86 外的主流架构,自动获取最新链接,对 deb 系和红帽系进行分别适配,其它发行版以 tar 压缩包形式进行安装,解压至/usr/local/bin 目录。
  • 2.在服务器上实现了自动构建(获取最新版+重新打包配置) VSCode Server (web 版)。
    每隔一两周,当检测到新版时,远程服务器就会自动更新,完成后将自动同步至国内的 gitee 仓库。因此远程始终都是新版,但是本地的话,得要根据你下载的时间而定,不会自动更新。
2020-04-22 更新日志
  • 1.修复赋予 proot 容器真实 root 权限后,vnc 出现的权限问题。
2020-04-24 更新日志
  • 1.给 ArchLinux 容器添加了 archlinuxcn 源,并将自动安装 yay
2020-04-29 更新日志
  • 1.应 gitee 的小伙伴要求,在测试功能中支持 WPS office 的安装。
2020-05-01 更新日志
  • 1.支持解析视频网站链接,与原版 annie 最大的区别是支持解析 b23.tv 和 BV 号。
2020-05-02 更新日志
  • 1.支持搭建个人云网盘(来自 github 开源项目filebrowser),配合我写的配置脚本来实现简易化管理。
2020-05-03 更新日志
  • 1.支持搭建并配置 WebDAV(nginx)服务,可以非常方便地配置和管理端口号、访问目录、访问账号、日志和进程等内容。
GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. <one line to give the program's name and a brief idea of what it does.> Copyright (C) <year> <name of author> This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. <signature of Ty Coon>, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License.

简介

在 GNU/Linux 和Android-Termux上一键安装 GNU/Linux容器,并自动配置中文环境。 展开 收起
Shell
GPL-2.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Shell
1
https://gitee.com/skymysky/linux.git
git@gitee.com:skymysky/linux.git
skymysky
linux
Tmoe-linux
master

搜索帮助