| 4 Jun 2025 |
matthewcroughan - nix.zone | { config, pkgs, ... }:
{
# Enable F-Droid and the F-Droid privileged extension
apps.fdroid.enable = true;
device = "hlte";
flavor = "lineageos";
androidVersion = 15;
#source.dirs."device/qcom/sepolicy-legacy".src = builtins.fetchGit {
# rev = "d958b58b0d28288e82251a75e53f5c90da559b63";
# url = "https://github.com/html6405/android_device_qcom_sepolicy-legacy.git";
# allRefs = true;
#};
#source.dirs."device/samsung/msm8974-common".src = builtins.fetchGit {
# rev = "81196871ba6b3c6cab09d209a7b92585d582b233";
# url = "https://github.com/html6405/android_device_samsung_msm8974-common.git";
# allRefs = true;
#};
#source.dirs."device/samsung/hlte-common".src = builtins.fetchGit {
# rev = "5263a01f1a7b405ee081461087ec270267cdeeee";
# url = "https://github.com/samsung-hlte/android_device_samsung_hlte-common.git";
# allRefs = true;
#};
source.dirs."device/samsung/msm8974-common".src =/home/matthew/tmp/android_device_samsung_msm8974-common;
source.dirs."device/qcom/sepolicy-legacy".src = /home/matthew/tmp/android_device_qcom_sepolicy-legacy;
source.dirs."device/samsung/hlte-common".src = /home/matthew/tmp/android_device_samsung_hlte-common;
source.dirs."hardware/samsung".src = /home/matthew/tmp/android_hardware_samsung;
source.dirs."device/samsung/qcom-common".src = builtins.fetchGit {
rev = "3f56559a5436fd7be36fc6b7010ed3506ebe6e08";
url = "https://github.com/LineageOS/android_device_samsung_qcom-common.git";
allRefs = true;
};
#source.dirs."hardware/samsung".src = builtins.fetchGit {
# rev = "8e2b9ef1d706f825eb3daf627116492a81b8a3c8";
# url = "https://github.com/LineageOS/android_hardware_samsung.git";
# allRefs = true;
#};
source.dirs."kernel/samsung/msm8974".src = builtins.fetchGit {
rev = "ff874517b9b601475c6c3dc911729bdd317e8b1f";
url = "https://github.com/samsung-hlte/android_kernel_samsung_msm8974.git";
allRefs = true;
};
source.dirs."vendor/samsung".src = pkgs.fetchFromGitHub {
rev = "7ebb43c52b94ebcd68fe129713cfc5f9ce3953e0";
owner = "html6405";
repo = "proprietary_vendor_samsung";
hash = "sha256-i83nEabuZHrQ8D9L04iXJk6UrA352hJ/zl/PwXlRBM4=";
# allRefs = true;
};
source.dirs."vendor/lineage".src = builtins.fetchGit {
rev = "fac22bf2792973a7bb85b37744ae4cb851174e24";
url = "https://github.com/LineageOS/android_vendor_lineage.git";
allRefs = true;
};
source.dirs."packages/apps/Updater".src = builtins.fetchGit {
rev = "587cf0bd02e90c72731851ba3a8079fbfd7964d5";
url = "https://github.com/LineageOS/android_packages_apps_Updater.git";
allRefs = true;
};
source.dirs."device/samsung/hlte".src = builtins.fetchGit {
rev = "1ac57aea5ecfe0ef06f24f931e978151a2307731";
url = "https://github.com/html6405/android_device_samsung_hlte.git";
allRefs = true;
};
}
| 14:32:52 |
matthewcroughan - nix.zone | I'm holding some patches in the /home places, but the commented out ones are what I'm forking off | 14:33:16 |
matthewcroughan - nix.zone | Unsupported device, but some guy got a later version of lineage working, so figured I'd take a stab at it too https://xdaforums.com/t/rom-unofficial-14-lineageos-21-0-for-samsung-galaxy-note-3-hlte-h3gduoschn.4717614/ | 14:34:32 |
matthewcroughan - nix.zone | Now I figure I just have some renaming to do with packages | 14:34:48 |
pentane ⭔ | you're trying to build lineage-21.0? | 14:39:37 |
pentane ⭔ | Lineage 21.0 is Android 14 and not 15 though iirc | 14:39:54 |
matthewcroughan - nix.zone | 22.1 | 14:40:04 |
pentane ⭔ | Oh, assumed you were trying to build 21.0 because of the xda thread | 14:40:46 |
matthewcroughan - nix.zone | Oh nah, but I am continuing from the sources they left in the thread | 14:41:04 |
pentane ⭔ | Ahh | 14:41:17 |
matthewcroughan - nix.zone | and going on an expedition to find the most up-to-date recent sources, and try to make them build with 22.1 | 14:41:19 |
matthewcroughan - nix.zone | which got me to the point above, where I get quite far into the build phase, but then these packages are missing | 14:41:33 |
pentane ⭔ | IIRC I had a similar problem while trying to implement LOS 22.2 support on my git-repo tooling rewrite feature branch, lemme check | 14:41:57 |
matthewcroughan - nix.zone | Yeah actually has anyone tested building LOS 22.1 with robotnix on a supported device? | 14:45:04 |
matthewcroughan - nix.zone | maybe nobody tested lately | 14:45:11 |
pentane ⭔ | Yep, I successfully built an FP4 22.1 image a couple months ago | 14:45:28 |
pentane ⭔ | Already on 22.2 rn though | 14:45:39 |
pentane ⭔ | In reply to @cyclopentane:aidoskyneen.eu IIRC I had a similar problem while trying to implement LOS 22.2 support on my git-repo tooling rewrite feature branch, lemme check Okay no that was something else | 14:45:56 |
matthewcroughan - nix.zone | and you're building that with robotnix? | 14:46:47 |
pentane ⭔ | Yep | 14:46:57 |
matthewcroughan - nix.zone | do you have a fork then | 14:46:59 |
matthewcroughan - nix.zone | I only see 22.1 in mainline | 14:47:05 |
pentane ⭔ | Yep, it's under https://codeberg.org/cyclopentane/robotnix | 14:47:11 |
pentane ⭔ | Atemu and I wanted to merge the git-repo handling rewrite for a while now but we never got around doing so | 14:47:34 |
pentane ⭔ | Basically it's a rewrite of mk_repo_file.py and the LOS-specific device repo updater scripts in Rust to make the handling easier | 14:48:19 |
matthewcroughan - nix.zone | Ah interesting, using your repo I get this | 14:48:40 |
matthewcroughan - nix.zone | evaluation warning: hlte is not an officially-supported device for LineageOS
error:
… while calling the 'derivationStrict' builtin
at <nix/derivation-internal.nix>:37:12:
36|
37| strict = derivationStrict drvAttrs;
| ^
38|
… while evaluating the derivation attribute 'name'
at /nix/store/n67nldl8x3f44w9mvk5zvij0q1rwnsmq-source/pkgs/stdenv/generic/make-derivation.nix:336:7:
335| // (optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) {
336| name =
| ^
337| let
… while evaluating the option `buildNumber':
… while evaluating the option `buildDateTime':
… while evaluating the option `source.dirs':
… while evaluating definitions from `/nix/store/xifnlh6fjhk1axipz9c943smq76bcmiz-source/modules/source.nix':
… while evaluating the option `source.manifests.lineage.branch':
… while evaluating definitions from `/nix/store/xifnlh6fjhk1axipz9c943smq76bcmiz-source/flavors/lineageos':
(stack trace truncated; use '--show-trace' to show the full, detailed trace)
error: attribute 'hlte' missing
at /nix/store/xifnlh6fjhk1axipz9c943smq76bcmiz-source/flavors/lineageos/default.nix:26:19:
25| LineageOSRelease = androidVersionToLineageBranch.${builtins.toString config.androidVersion};
26| defaultBranch = deviceMetadata.${config.device}.branch;
| ^
27|
| 14:48:54 |
matthewcroughan - nix.zone | So in this setup you no longer support adding your own unsupported devices? | 14:49:20 |
pentane ⭔ | Currently I'm just pulling the device list from https://github.com/LineageOS/hudson/blob/main/lineage-build-targets | 14:49:52 |
pentane ⭔ | Providing a mechanism for building officially unsupported devices is on my todo list though :) | 14:50:12 |