1
0
This commit is contained in:
Sense T 2025-02-27 23:35:05 +08:00
commit 307441f96d
5 changed files with 161 additions and 0 deletions

1
.envrc Normal file
View File

@ -0,0 +1 @@
use flake

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
.direnv
test

87
README.md Normal file
View File

@ -0,0 +1,87 @@
# 信创全家桶·Nix 特别版 🚀🦉
> 创,都可以创……
> 专为信创软件爱好者设计的 Nix 仓库
专治各类信创软件依赖失调、版本混乱、安装困难等疑难杂症
![国产化率99.9%](https://img.shields.io/badge/国产化率-99.9%25-red)
![薛定谔的兼容性](https://img.shields.io/badge/兼容性-薛定谔的-yellowgreen)
![文档不存在](https://img.shields.io/badge/文档-量子态-ff69b4)
## 这是什么? 🤔
一个用 [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
View 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
View File

@ -0,0 +1,4 @@
{
projectRootFile = "flake.nix";
programs.nixfmt.enable = true;
}