init
This commit is contained in:
commit
307441f96d
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
.direnv
|
||||
test
|
87
README.md
Normal file
87
README.md
Normal file
@ -0,0 +1,87 @@
|
||||
# 信创全家桶·Nix 特别版 🚀🦉
|
||||
|
||||
> 创,都可以创……
|
||||
> 专为信创软件爱好者设计的 Nix 仓库
|
||||
|
||||
专治各类信创软件依赖失调、版本混乱、安装困难等疑难杂症
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
## 这是什么? 🤔
|
||||
|
||||
一个用 [Nix](https://nixos.org/) 打包的国产信创软件集合仓库,试图用现代包管理技术对抗:
|
||||
|
||||
- 玄学般的依赖关系
|
||||
- 薛定谔的二进制兼容性
|
||||
- 永远在路上的文档
|
||||
- 比大姨妈还准时的国产化KPI更新
|
||||
- 以及各类 "在我机器上是好的" 行为艺术
|
||||
|
||||
## 食用方法 🍜
|
||||
|
||||
### 前置条件
|
||||
|
||||
1. 安装 [Nix](https://nixos.org/download.html)
|
||||
2. 准备一颗强大的心脏 ❤️🔧
|
||||
|
||||
### 快速开始
|
||||
|
||||
```bash
|
||||
# 添加本仓库通道
|
||||
nix-channel --add https://github.com/your-repo/your-channel
|
||||
|
||||
# 进入量子叠加态环境
|
||||
nix-shell -p \
|
||||
uos-print-daemon \ # 永远在重启的打印服务
|
||||
kylin-secure-module \ # 薛定谔的安全组件
|
||||
neo-kylin-db-client \ # 需要先证明自己是root才能用的数据库客户端
|
||||
--show-trace
|
||||
```
|
||||
|
||||
## 已收录珍稀品种 🦄
|
||||
|
||||
- 统信UOS全家桶(附带祖传依赖树)
|
||||
- 麒麟安全模块(量子态验证引擎)
|
||||
- 中望Linux特别版(CAD打开速度挑战人类耐心极限)
|
||||
- 金山WPS Linux定制版(字体渲染的平行宇宙)
|
||||
- 东方通中间件(配置复杂度堪比火箭发射)
|
||||
|
||||
## 贡献指南 👷
|
||||
|
||||
欢迎提交PR治疗以下症状:
|
||||
|
||||
- 找不到头的依赖项
|
||||
- 神秘的核心已转储
|
||||
- 需要烧香才能通过的编译过程
|
||||
- 文档与实物严重不符的情况
|
||||
- 任何具有国产软件特色的行为艺术案例
|
||||
|
||||
## 免责声明 ⚠️
|
||||
|
||||
本仓库不保证:
|
||||
|
||||
- 能正常启动
|
||||
- 不破坏系统
|
||||
- 符合安全规范
|
||||
- 与任何官方认证兼容
|
||||
- 在重启后依然存在
|
||||
|
||||
## 吐槽专区 😤
|
||||
|
||||
### 我们深爱的国产软件七大美德
|
||||
|
||||
1. **依赖地狱**:自带上古版本的OpenSSL和glibc,完美实现时间穿越
|
||||
2. **文档不存在**:真正的安全来自于"谁都不知道怎么用"
|
||||
3. **硬件亲和性**:只认特定批次的国产CPU,建议配合算命先生使用
|
||||
4. **安全创新**:独创的root用户二次验证体系(先成为root才能验证你是root)
|
||||
5. **性能艺术**:用Electron重写传统C++软件,实现真正的"负重前行"
|
||||
6. **版本玄学**:BuildNumber比版本号更重要,且永远对不上
|
||||
7. **爱国验证**:每小时自动检测系统语言,发现非中文环境立即罢工
|
||||
|
||||
## 开源协议 📜
|
||||
|
||||
[反996许可证] + [量子波动授权条款]:你可以在工作日的非工作时间,或老板看不见的量子态中进行修改
|
||||
|
||||
(注:本README纯属技术吐槽,如有雷同,说明国产软件生态真的需要改进🤫 实际使用时请自行替换仓库地址和软件包名)
|
67
flake.nix
Normal file
67
flake.nix
Normal file
@ -0,0 +1,67 @@
|
||||
{
|
||||
description = "";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||
treefmt-nix.url = "github:numtide/treefmt-nix";
|
||||
};
|
||||
|
||||
outputs =
|
||||
{ nixpkgs, ... }@inputs:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
pkgs = import nixpkgs { inherit system; };
|
||||
treefmtEval = inputs.treefmt-nix.lib.evalModule pkgs ./treefmt.nix;
|
||||
packages-inode = with pkgs; [
|
||||
libgcc
|
||||
libxcrypt-legacy
|
||||
libuuid
|
||||
libpng12
|
||||
libjpeg
|
||||
libudev0-shim
|
||||
libz
|
||||
atk
|
||||
ell
|
||||
glib
|
||||
cairo
|
||||
ncurses5
|
||||
pango
|
||||
gtk2
|
||||
gdk-pixbuf
|
||||
freetype
|
||||
fontconfig
|
||||
xorg.libSM
|
||||
xorg.libX11
|
||||
xorg.libXxf86vm
|
||||
|
||||
];
|
||||
inherit (pkgs) mkShell;
|
||||
in
|
||||
{
|
||||
formatter.${system} = treefmtEval.config.build.wrapper;
|
||||
devShell."${system}" = mkShell {
|
||||
buildInputs =
|
||||
with pkgs;
|
||||
[
|
||||
tokei
|
||||
]
|
||||
++ packages-inode;
|
||||
};
|
||||
|
||||
packages."${system}" = {
|
||||
dev-inode =
|
||||
let
|
||||
pkgs = import nixpkgs { inherit system; };
|
||||
in
|
||||
pkgs.buildFHSEnv {
|
||||
name = "inode-dev-shell";
|
||||
buildInputs = packages-inode;
|
||||
targetPkgs = pkgs: with pkgs; [ ] ++ packages;
|
||||
profile = ''
|
||||
export FHS=1
|
||||
export PROMPT_COMMAND="echo -n '(FHS)'"
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
4
treefmt.nix
Normal file
4
treefmt.nix
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
projectRootFile = "flake.nix";
|
||||
programs.nixfmt.enable = true;
|
||||
}
|
Loading…
Reference in New Issue
Block a user