Skip to content

Commit 7764d1e

Browse files
committed
25.11
1 parent 1c306c0 commit 7764d1e

37 files changed

+365
-183
lines changed

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Changelog
22

3-
## Release 24.11 (unreleased)
3+
## Release 25.11 (unreleased)
44

55
## Release 24.05
66

README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ for example:
5353
5454
{
5555
environment.packages = [ pkgs.vim ];
56-
system.stateVersion = "24.05";
56+
system.stateVersion = "25.11";
5757
}
5858
```
5959

@@ -67,7 +67,7 @@ An alternative location is `~/.config/nixpkgs/config.nix` with the key
6767
6868
{
6969
environment.packages = [ pkgs.vim ];
70-
system.stateVersion = "24.05";
70+
system.stateVersion = "25.11";
7171
};
7272
}
7373
```
@@ -80,7 +80,7 @@ To enable `home-manager` you simply need to follow the instructions already prov
8080

8181
1. Add `home-manager` channel:
8282
```sh
83-
nix-channel --add https://github.com/nix-community/home-manager/archive/release-24.05.tar.gz home-manager
83+
nix-channel --add https://github.com/nix-community/home-manager/archive/release-25.11.tar.gz home-manager
8484
nix-channel --update
8585
```
8686
2. Configure `home-manager`:
@@ -89,15 +89,15 @@ To enable `home-manager` you simply need to follow the instructions already prov
8989
9090
{
9191
# Read Nix-on-Droid changelog before changing this value
92-
system.stateVersion = "24.05";
92+
system.stateVersion = "25.11";
9393
9494
# insert Nix-on-Droid config
9595
9696
home-manager.config =
9797
{ pkgs, ... }:
9898
{
9999
# Read home-manager changelog before changing this value
100-
home.stateVersion = "24.05";
100+
home.stateVersion = "25.11";
101101
102102
# insert home-manager config
103103
};
@@ -181,10 +181,10 @@ A minimal example could look like the following:
181181
description = "Minimal example of Nix-on-Droid system config.";
182182
183183
inputs = {
184-
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05";
184+
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11";
185185
186186
nix-on-droid = {
187-
url = "github:nix-community/nix-on-droid/release-24.05";
187+
url = "github:nix-community/nix-on-droid/release-25.11";
188188
inputs.nixpkgs.follows = "nixpkgs";
189189
};
190190
};

flake.lock

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

flake.nix

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
nixpkgs.url = "github:NixOS/nixpkgs";
66

77
# for bootstrap zip ball creation and proot-termux builds, we use a fixed version of nixpkgs to ease maintanence.
8-
# head of nixos-24.05 as of 2024-07-06
8+
# head of nixos-25.11 as of 2025-12-04
99
# note: when updating nixpkgs-for-bootstrap, update store paths of proot-termux in modules/environment/login/default.nix
10-
nixpkgs-for-bootstrap.url = "github:NixOS/nixpkgs/49ee0e94463abada1de470c9c07bfc12b36dcf40";
10+
nixpkgs-for-bootstrap.url = "github:NixOS/nixpkgs/c97c47f2bac4fa59e2cbdeba289686ae615f8ed4";
1111

1212
home-manager = {
1313
url = "github:nix-community/home-manager";

modules/build/initial-build.nix

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
with lib;
66

77
let
8-
defaultNixpkgsBranch = "nixos-24.05";
9-
defaultNixOnDroidBranch = "release-24.05";
8+
defaultNixpkgsBranch = "nixos-25.11";
9+
defaultNixOnDroidBranch = "release-25.11";
1010

1111
defaultNixpkgsChannel = "https://nixos.org/channels/${defaultNixpkgsBranch}";
1212
defaultNixOnDroidChannel = "https://github.com/nix-community/nix-on-droid/archive/${defaultNixOnDroidBranch}.tar.gz";

modules/environment/login/default.nix

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,8 +87,8 @@ in
8787
prootStatic =
8888
let
8989
crossCompiledPaths = {
90-
aarch64-linux = "/nix/store/7qd99m1w65x2vgqg453nd70y60sm3kay-proot-termux-static-aarch64-unknown-linux-android-unstable-2024-05-04";
91-
x86_64-linux = "/nix/store/pakj3svvw84rhkzdc6211yhc2cgvc21f-proot-termux-static-x86_64-unknown-linux-android-unstable-2024-05-04";
90+
aarch64-linux = "/nix/store/pvxjb26pknyppyn30k16hvzwdg4a8sz0-proot-termux-static-aarch64-unknown-linux-android-0-unstable-2025-10-19";
91+
x86_64-linux = "/nix/store/i7gcbfp3nlnmcrzy7g20mc9pax7pkl7x-proot-termux-static-x86_64-unknown-linux-android-0-unstable-2025-10-19";
9292
};
9393
in
9494
"${crossCompiledPaths.${targetSystem}}";

modules/environment/login/nix-on-droid.nix.default

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
environment.etcBackupExtension = ".bak";
3131

3232
# Read the changelog before changing this value
33-
system.stateVersion = "24.05";
33+
system.stateVersion = "25.11";
3434

3535
# Set up nix for flakes
3636
#nix.extraOptions = ''
@@ -41,7 +41,7 @@
4141
#time.timeZone = "Europe/Berlin";
4242

4343
# After installing home-manager channel like
44-
# nix-channel --add https://github.com/nix-community/home-manager/archive/release-24.05.tar.gz home-manager
44+
# nix-channel --add https://github.com/nix-community/home-manager/archive/release-25.11.tar.gz home-manager
4545
# nix-channel --update
4646
# you can configure home-manager in here like
4747
#home-manager = {
@@ -51,7 +51,7 @@
5151
# { config, lib, pkgs, ... }:
5252
# {
5353
# # Read the changelog before changing this value
54-
# home.stateVersion = "24.05";
54+
# home.stateVersion = "25.11";
5555
#
5656
# # insert home-manager config
5757
# };

modules/version.nix

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ with lib;
2222
"23.05"
2323
"23.11"
2424
"24.05"
25+
"25.11"
2526
];
2627
description = ''
2728
It is occasionally necessary for Nix-on-Droid to change
Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,41 @@
11
# Copyright (c) 2019-2024, see AUTHORS. Licensed under MIT License, see LICENSE.
22

3-
{ stdenv, fetchFromGitHub, cmake }:
3+
{ stdenv
4+
, fetchFromGitHub
5+
, cmake
6+
,
7+
}:
48

59
let
610
appPath = "/data/data/com.termux.nix/files/apps/com.termux.nix";
711
socketPath = "${appPath}/termux-am/am.sock";
812
in
9-
stdenv.mkDerivation rec {
13+
stdenv.mkDerivation (finalAttrs: {
1014
name = "termux-am";
1115
version = "1.5.0";
16+
1217
src = fetchFromGitHub {
1318
owner = "termux";
1419
repo = "termux-am-socket";
15-
rev = version;
16-
sha256 = "sha256-6pCv2HMBRp8Hi56b43mQqnaFaI7y5DfhS9gScANwg2I=";
20+
tag = finalAttrs.version;
21+
hash = "sha256-6pCv2HMBRp8Hi56b43mQqnaFaI7y5DfhS9gScANwg2I=";
1722
};
23+
1824
nativeBuildInputs = [ cmake ];
19-
patchPhase = ''
20-
# Header generation doesn't seem to work on android
25+
26+
# Header generation doesn't seem to work on android
27+
postPatch = ''
2128
echo "#define SOCKET_PATH \"${socketPath}\"" > termux-am.h
22-
# Fix the bash link so that nix can patch it + path to termux-am-socket
29+
''
30+
# Fix the bash link so that nix can patch it + path to termux-am-socket
31+
+ ''
2332
substituteInPlace termux-am.sh.in \
24-
--replace @TERMUX_PREFIX@/bin/bash /bin/bash \
25-
--replace \
26-
"termux-am-socket \"\$am_command_string\"" \
27-
"$out/bin/termux-am-socket \"\$am_command_string\""
33+
--replace-fail "@TERMUX_PREFIX@/bin/bash" "/bin/bash" \
34+
--replace-fail 'termux-am-socket "$am_command_string"' "$out/bin/termux-am-socket \"\$am_command_string\""
2835
'';
36+
37+
# Scripts use 'am' as an alias.
2938
postInstall = ''
30-
# Scripts use 'am' as an alias.
31-
ln -s $out/bin/termux-am $out/bin/am
39+
ln --symbolic $out/bin/termux-am $out/bin/am
3240
'';
33-
}
41+
})

pkgs/android-integration/termux-tools.nix

Lines changed: 26 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,55 @@
11
# Copyright (c) 2019-2024, see AUTHORS. Licensed under MIT License, see LICENSE.
22

3-
{ stdenvNoCC
3+
{ stdenv
44
, fetchFromGitHub
55
, autoreconfHook
66
, makeWrapper
77
, gnused
88
, getopt
99
, termux-am
10+
,
1011
}:
1112

12-
stdenvNoCC.mkDerivation rec {
13+
stdenv.mkDerivation (finalAttrs: {
1314
name = "termux-tools";
14-
version = "1.42.4";
15+
version = "1.47.1";
16+
1517
src = fetchFromGitHub {
1618
owner = "termux";
1719
repo = "termux-tools";
18-
rev = "v${version}";
19-
sha256 = "sha256-LkkeaEQcY8HgunBYAg3Ymn5xYPvrGqGNCZTd/NyIOKY=";
20+
tag = "v${finalAttrs.version}";
21+
hash = "sha256-YfIxDegzIHyy62IlpSgrDz4fQiPoZNgSzXNtAk5lmn8=";
2022
};
21-
nativeBuildInputs = [ autoreconfHook makeWrapper ];
23+
24+
nativeBuildInputs = [
25+
autoreconfHook
26+
makeWrapper
27+
];
28+
2229
propagatedInputs = [ termux-am ];
2330

24-
# https://github.com/termux/termux-tools/pull/95
25-
patches = [ ./termux-tools.patch ];
2631
postPatch = ''
2732
substituteInPlace scripts/termux-setup-storage.in \
28-
--replace @TERMUX_HOME@ /data/data/com.termux.nix/files/home/ \
29-
--replace @TERMUX_APP_PACKAGE@ com.termux.nix
33+
--replace-fail "@TERMUX_HOME@" "/data/data/com.termux.nix/files/home/" \
34+
--replace-fail "@TERMUX_APP_PACKAGE@" "com.termux.nix"
3035
substituteInPlace scripts/termux-open.in \
31-
--replace 'getopt ' '${getopt}/bin/getopt '
36+
--replace-fail "getopt " "${getopt}/bin/getopt "
3237
substituteInPlace \
3338
scripts/termux-open.in \
3439
scripts/termux-wake-lock.in \
3540
scripts/termux-wake-unlock.in \
36-
--replace @[email protected] com.termux.app \
37-
--replace @TERMUX_APP_PACKAGE@ com.termux.nix
41+
--replace-fail "@[email protected]" "com.termux.app" \
42+
--replace-fail "@TERMUX_APP_PACKAGE@" "com.termux.nix"
3843
substituteInPlace scripts/termux-reload-settings.in \
39-
--replace @TERMUX_APP_PACKAGE@ com.termux.nix
44+
--replace-fail "@TERMUX_APP_PACKAGE@" "com.termux.nix"
4045
${gnused}/bin/sed -i 's|^am |${termux-am}/bin/am |' scripts/*
4146
42-
rm -r doc # manpage is half misleading, pulling pandoc is not worth it
43-
substituteInPlace Makefile.am --replace \
44-
'SUBDIRS = . scripts doc mirrors motds' \
45-
'SUBDIRS = . scripts'
46-
substituteInPlace configure.ac --replace \
47-
'AC_CONFIG_FILES([Makefile scripts/Makefile doc/Makefile' \
48-
'AC_CONFIG_FILES([Makefile scripts/Makefile])'
49-
substituteInPlace configure.ac --replace \
50-
'mirrors/Makefile motds/Makefile])' ""
47+
rm --recursive doc # manpage is half misleading, pulling pandoc is not worth it
48+
substituteInPlace Makefile.am \
49+
--replace-fail "SUBDIRS = . scripts doc mirrors motds src" "SUBDIRS = . scripts"
50+
substituteInPlace configure.ac \
51+
--replace-fail "AC_CONFIG_FILES([Makefile scripts/Makefile doc/Makefile" "AC_CONFIG_FILES([Makefile scripts/Makefile])" \
52+
--replace-fail "mirrors/Makefile motds/Makefile src/Makefile])" ""
5153
'';
5254

5355
outputs = [
@@ -67,7 +69,6 @@ stdenvNoCC.mkDerivation rec {
6769
rm -d $out/etc
6870
6971
rm $out/bin/chsh # we offer a declarative way to change your shell
70-
rm $out/bin/cmd # doesn't work because we overlay /system/bin
7172
rm $out/bin/dalvikvm # doesn't work because we overlay /system/bin
7273
rm $out/bin/df # works without the magic
7374
rm $out/bin/getprop # doesn't work because we overlay /system/bin
@@ -121,4 +122,4 @@ stdenvNoCC.mkDerivation rec {
121122
echo ./share/examples/termux/termux.properties >> expected # useful
122123
diff -u expected effective
123124
'';
124-
}
125+
})

0 commit comments

Comments
 (0)