From f45522129f91e2ee7255999d0e9febff5262c9b3 Mon Sep 17 00:00:00 2001 From: Guanran Wang Date: Mon, 25 Mar 2024 16:51:54 +0800 Subject: [PATCH] hosts/socrates: (wip) add robotnix lineage20 --- hosts/socrates/robotnix/disable-gapps.patch | 21 ++++ hosts/socrates/robotnix/flake.lock | 130 ++++++++++++++++++++ hosts/socrates/robotnix/flake.nix | 54 ++++++++ 3 files changed, 205 insertions(+) create mode 100644 hosts/socrates/robotnix/disable-gapps.patch create mode 100644 hosts/socrates/robotnix/flake.lock create mode 100644 hosts/socrates/robotnix/flake.nix diff --git a/hosts/socrates/robotnix/disable-gapps.patch b/hosts/socrates/robotnix/disable-gapps.patch new file mode 100644 index 0000000..0db05e6 --- /dev/null +++ b/hosts/socrates/robotnix/disable-gapps.patch @@ -0,0 +1,21 @@ +--- + lineage_socrates.mk | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/lineage_socrates.mk b/lineage_socrates.mk +index c3e5c0a..f9f0f74 100644 +--- a/lineage_socrates.mk ++++ b/lineage_socrates.mk +@@ -14,9 +14,6 @@ $(call inherit-product, vendor/lineage/config/common_full_phone.mk) + # Inherit device configurations + $(call inherit-product, device/xiaomi/socrates/device.mk) + +-# Inherit from Gapps +-$(call inherit-product, vendor/gapps/arm64/arm64-vendor.mk) +- + ## Device identifier + PRODUCT_DEVICE := socrates + PRODUCT_NAME := lineage_socrates +-- +2.44.0 + diff --git a/hosts/socrates/robotnix/flake.lock b/hosts/socrates/robotnix/flake.lock new file mode 100644 index 0000000..8e55133 --- /dev/null +++ b/hosts/socrates/robotnix/flake.lock @@ -0,0 +1,130 @@ +{ + "nodes": { + "androidPkgs": { + "inputs": { + "devshell": "devshell", + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1638562808, + "narHash": "sha256-nnGyBugMQo9WweTgpfPbJu0fHnRtxvsPQ9el2D3wPrY=", + "owner": "tadfisher", + "repo": "android-nixpkgs", + "rev": "a191ab6adb019b09d3bb919bb98dca31d83519d5", + "type": "github" + }, + "original": { + "owner": "tadfisher", + "ref": "stable", + "repo": "android-nixpkgs", + "type": "github" + } + }, + "devshell": { + "locked": { + "lastModified": 1637575296, + "narHash": "sha256-ZY8YR5u8aglZPe27+AJMnPTG6645WuavB+w0xmhTarw=", + "owner": "numtide", + "repo": "devshell", + "rev": "0e56ef21ba1a717169953122c7415fa6a8cd2618", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, + "flake-utils": { + "locked": { + "lastModified": 1638122382, + "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "74f7e4319258e287b0f9cb95426c9853b282730b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1637841632, + "narHash": "sha256-QYqiKHdda0EOnLGQCHE+GluD/Lq2EJj4hVTooPM55Ic=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "73369f8d0864854d1acfa7f1e6217f7d6b6e3fa1", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgsUnstable": { + "locked": { + "lastModified": 1638376152, + "narHash": "sha256-ucgLpVqhFnClH7YRUHBHnmiOd82RZdFR3XJt36ks5fE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "6daa4a5c045d40e6eae60a3b6e427e8700f1c07f", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1638371214, + "narHash": "sha256-0kE6KhgH7n0vyuX4aUoGsGIQOqjIx2fJavpCWtn73rc=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "a640d8394f34714578f3e6335fc767d0755d78f9", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-21.11", + "repo": "nixpkgs", + "type": "github" + } + }, + "robotnix": { + "inputs": { + "androidPkgs": "androidPkgs", + "nixpkgs": "nixpkgs_2", + "nixpkgsUnstable": "nixpkgsUnstable" + }, + "locked": { + "lastModified": 1699510635, + "narHash": "sha256-OpScLedUNJ6xyEyd5PeAMNKaoi8LMI7RT1lzXPp+UaY=", + "owner": "danielfullmer", + "repo": "robotnix", + "rev": "f941a20537384418c22000f6e6487c92441e0a7f", + "type": "github" + }, + "original": { + "owner": "danielfullmer", + "repo": "robotnix", + "type": "github" + } + }, + "root": { + "inputs": { + "robotnix": "robotnix" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/hosts/socrates/robotnix/flake.nix b/hosts/socrates/robotnix/flake.nix new file mode 100644 index 0000000..bc724d4 --- /dev/null +++ b/hosts/socrates/robotnix/flake.nix @@ -0,0 +1,54 @@ +{ + description = "Build LineageOS for Redmi K60 Pro"; + + inputs.robotnix.url = "github:danielfullmer/robotnix"; + + outputs = inputs: { + packages.x86_64-linux.default = inputs.self.robotnixConfigurations."socrates".img; + + # FIXME: it doesn't build + # hardware/qcom-caf/sm8550/audio/pal/test/PalTest_main.c:56:32: error: unused parameter 'sig' [-Werror,-Wunused-parameter] + # static void sigint_handler(int sig) + # ^ + # 1 error generated. + robotnixConfigurations."socrates" = inputs.robotnix.lib.robotnixSystem ({pkgs, ...}: { + device = "socrates"; + flavor = "lineageos"; + androidVersion = 13; + + apps.chromium.enable = false; + webview.chromium.enable = false; + + ccache.enable = true; + + source.dirs."device/xiaomi/socrates".src = pkgs.fetchFromGitHub { + owner = "kmiit"; + repo = "android_device_xiaomi_socrates"; + rev = "6548361fe50743d6fe752f5848f63f9965d12d23"; + hash = "sha256-traXLuq74MTfUStOqyX3QBBbYAQEtXWTP9PpBjVfK/o="; + }; + source.dirs."device/xiaomi/socrates".patches = [./disable-gapps.patch]; + + source.dirs."device/xiaomi/socrates-kernel".src = pkgs.fetchFromGitHub { + owner = "xiaomi-socrates"; + repo = "android_device_xiaomi_socrates-kernel"; + rev = "f13d073698b678442a694b2b2e3eecc997bb5227"; + hash = "sha256-Ln7rhdJNbj8imUUaitnUhXMj36Wjuf5IB8UmD6Y1o4c"; + }; + + source.dirs."hardware/xiaomi".src = pkgs.fetchFromGitHub { + owner = "cupid-development"; + repo = "android_hardware_xiaomi"; + rev = "b5167f21ba268a029461bded3f12205e5600b9f0"; + hash = "sha256-69nyWSjFrTjVsZdX92NZ5lv1H14mtC9dGepaD+nwvhY="; + }; + + source.dirs."vendor/xiaomi/socrates".src = pkgs.fetchFromGitHub { + owner = "kmiit"; + repo = "android_vendor_xiaomi_socrates"; + rev = "8808c2f06a7645eaccb4992193f24c188b908418"; + hash = "sha256-jPZxWtTpj5a+EoIVmkU4L0dQD4926HyeM6BE2/1swDw="; + }; + }); + }; +}