* feat: add Nix Flake release and update documentation for Nix integration - Added flake.nix with native library patching for Linux - Included SHA256 hashes for v0.10.0 DEB releases (x86_64 and arm64) - Updated README.md with instructions for nix run, NixOS, Home Manager, and devShells - Generated flake.lock for reproducibility * refactor: improve Nix Flake patterns for better consumer control - Extracted derivation logic into a reusable `mkPackage` function - Exposed `overlays.default` to allow consumers to use their own nixpkgs instance - Updated `pkgs.system` to `pkgs.stdenv.hostPlatform.system` to follow modern Nix patterns - Ensured default `packages` definition correctly handles unfree configuration for testing with `nix build` or `nix run` * docs: update README with advanced Nix integration patterns - Added Option 1 (Direct Integration) and Option 2 (Overlay) documentation - Explained how to use the overlay for full nixpkgs control - Fixed Markdown styling and lint issues in the Nix integration section * docs: simplify Nix documentation to favor Overlay integration - Removed "Option 1" (direct integration) as per user feedback - Promoted the Overlay method as the standard way to consume the package - Updated devShell examples to rely on the overlayed package set for consistency * fix(security): prevent master key overwriting on decryption failure and improve account loading resilience - Modify readSafeStorageKey and generatePrimaryMasterKey to stop if decryption fails for an existing file, preventing permanent data loss when keyring is temporarily locked. - Update CloudAccountRepo.getAccounts and getAccount to gracefully skip corrupted account records instead of throwing errors. - Added detailed logging for security failures to aid in diagnostics. * docs(readme): sync Nix/NixOS integration docs in README.zh-CN --------- Co-authored-by: Youssef <[email protected]>
This commit is contained in:
1 parent
61716bb512
commit
fce38ec6f0
6 files changed
+300
-23
No files matched your search
@@ -192,6 +192,53 @@
|
||||
| Windows (x64/ARM64) | [.exe 安装包](https://github.com/Draculabo/AntigravityManager/releases/latest) |
|
||||
| macOS | [.dmg 安装包](https://github.com/Draculabo/AntigravityManager/releases/latest) |
|
||||
| Linux | [.deb / .rpm](https://github.com/Draculabo/AntigravityManager/releases/latest) |
|
||||
| NixOS / Nix | `nix run github:Draculabo/AntigravityManager` |
|
||||
|
||||
### ❄️ Nix 集成
|
||||
|
||||
你可以通过项目提供的 flake 将 Antigravity Manager 集成到你的 Nix 配置中。
|
||||
|
||||
#### 🛠️ NixOS / Home Manager
|
||||
|
||||
先在你的 `flake.nix` 的 `inputs` 中加入:
|
||||
|
||||
```nix
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
antigravity-manager.url = "github:Draculabo/AntigravityManager";
|
||||
};
|
||||
```
|
||||
|
||||
然后把 `antigravity-manager.overlays.default` 添加到 `nixpkgs.overlays`。这样会基于你自己的 `nixpkgs` 实例构建,并继承你的全局配置。
|
||||
|
||||
```nix
|
||||
# 添加到你的 NixOS/Home Manager 配置中
|
||||
{
|
||||
nixpkgs.overlays = [ inputs.antigravity-manager.overlays.default ];
|
||||
|
||||
# Antigravity Manager 使用非自由许可证 (cc-by-nc-sa-40)
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
environment.systemPackages = [
|
||||
pkgs.antigravity-manager
|
||||
];
|
||||
}
|
||||
```
|
||||
|
||||
#### 💻 开发 Shell
|
||||
|
||||
如果你已经使用上面的 overlay,也可以直接在 `devShell` 里加入:
|
||||
|
||||
```nix
|
||||
devShells.default = pkgs.mkShell {
|
||||
packages = [
|
||||
pkgs.antigravity-manager
|
||||
];
|
||||
};
|
||||
```
|
||||
|
||||
> [!NOTE]
|
||||
> 由于该包是非自由软件,你必须在 `nixpkgs` 配置中开启 `allowUnfree = true;`,否则会评估失败。
|
||||
|
||||
### 从源码构建
|
||||
|
||||
|
||||
Reference in new issue
Block a user