Merge staging-next into staging
This commit is contained in:
commit
ff5d09638c
@ -13,6 +13,7 @@ with import <nixpkgs> {};
|
||||
|
||||
let
|
||||
androidComposition = androidenv.composeAndroidPackages {
|
||||
cmdLineToolsVersion = "8.0";
|
||||
toolsVersion = "26.1.1";
|
||||
platformToolsVersion = "30.0.5";
|
||||
buildToolsVersions = [ "30.0.3" ];
|
||||
@ -42,7 +43,10 @@ exceptions are the tools, platform-tools and build-tools sub packages.
|
||||
|
||||
The following parameters are supported:
|
||||
|
||||
* `toolsVersion`, specifies the version of the tools package to use
|
||||
* `cmdLineToolsVersion `, specifies the version of the `cmdline-tools` package to use
|
||||
* `toolsVersion`, specifies the version of the `tools` package. Notice `tools` is
|
||||
obsolete, and currently only `26.1.1` is available, so there's not a lot of
|
||||
options here, however, you can set it as `null` if you don't want it.
|
||||
* `platformsToolsVersion` specifies the version of the `platform-tools` plugin
|
||||
* `buildToolsVersions` specifies the versions of the `build-tools` plugins to
|
||||
use.
|
||||
|
@ -952,6 +952,7 @@ let
|
||||
'';
|
||||
} else {
|
||||
name = "RenameInterface";
|
||||
nodes = { };
|
||||
testScript = "";
|
||||
};
|
||||
# even with disabled networkd, systemd.network.links should work
|
||||
|
@ -62,7 +62,7 @@ let
|
||||
rm -rf bin/gdb/linux
|
||||
ln -s ${gdb} bin/gdb/linux
|
||||
|
||||
ls -d $PWD/bin/lldb/linux/lib/python3.8/lib-dynload/* |
|
||||
ls -d $PWD/bin/lldb/linux/x64/lib/python3.8/lib-dynload/* |
|
||||
xargs patchelf \
|
||||
--replace-needed libssl.so.10 libssl.so \
|
||||
--replace-needed libcrypto.so.10 libcrypto.so
|
||||
|
@ -3,26 +3,26 @@
|
||||
"clion": {
|
||||
"update-channel": "CLion RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}.tar.gz",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "cd057a0aa96cf5b4216a436136a1002e6f3dc578bcd8a69f98d6908381b03526",
|
||||
"url": "https://download.jetbrains.com/cpp/CLion-2022.3.1.tar.gz",
|
||||
"build_number": "223.8214.51"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "896e9cc5b908aa51e091201c320f6f08033f9064382e44b107fccc554ed94895",
|
||||
"url": "https://download.jetbrains.com/cpp/CLion-2022.3.2.tar.gz",
|
||||
"build_number": "223.8617.54"
|
||||
},
|
||||
"datagrip": {
|
||||
"update-channel": "DataGrip RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/datagrip/datagrip-{version}.tar.gz",
|
||||
"version": "2022.3.2",
|
||||
"sha256": "e542111e490fbbc80d3aebcbbc343b29e17bf6766d7b708675618d8e49b6ee83",
|
||||
"url": "https://download.jetbrains.com/datagrip/datagrip-2022.3.2.tar.gz",
|
||||
"build_number": "223.8214.62"
|
||||
"version": "2022.3.3",
|
||||
"sha256": "a5575ff7e80dd4e9390eb64fc54ed4a924403950da0c38da548de3c4bd97b34b",
|
||||
"url": "https://download.jetbrains.com/datagrip/datagrip-2022.3.3.tar.gz",
|
||||
"build_number": "223.8617.3"
|
||||
},
|
||||
"gateway": {
|
||||
"update-channel": "Gateway RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-{version}.tar.gz",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "7bfe02c1b414c2fc095deab35fa40ed29a129bfa76efc3e31a2785f0f37fa778",
|
||||
"url": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-223.8214.51.tar.gz",
|
||||
"build_number": "223.8214.51"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "987f6dca9518da262f556ba1a5afe6190cc5c13a6692c194b4f9ee05d4e66318",
|
||||
"url": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-223.8617.56.tar.gz",
|
||||
"build_number": "223.8617.56"
|
||||
},
|
||||
"goland": {
|
||||
"update-channel": "GoLand RELEASE",
|
||||
@ -35,18 +35,18 @@
|
||||
"idea-community": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIC-{version}.tar.gz",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "4c3514642ce6c86e5343cc29b01c06ddc9c55f134bcb6650de5d7d36205799e8",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIC-2022.3.1.tar.gz",
|
||||
"build_number": "223.8214.52"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "02bc35281eb4e1285eeb9d797ec2b31ec7370e320ad0e89f6f1fa704d78ec4bf",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIC-2022.3.2.tar.gz",
|
||||
"build_number": "223.8617.56"
|
||||
},
|
||||
"idea-ultimate": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIU-{version}.tar.gz",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "ce807ba3a776e14f85dbd38f2744fc97e54318561eddd1c265f0d2cacc2565da",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIU-2022.3.1.tar.gz",
|
||||
"build_number": "223.8214.52"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "6fa3aff1c730bb79bf3e2e29edcce6d4cdbccfa631524c6253de518be6b6f3d2",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIU-2022.3.2.tar.gz",
|
||||
"build_number": "223.8617.56"
|
||||
},
|
||||
"mps": {
|
||||
"update-channel": "MPS RELEASE",
|
||||
@ -68,26 +68,26 @@
|
||||
"pycharm-community": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}.tar.gz",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "b243103f27cfb763106a2f5667d8f201562154755ce9746e81e88c80acd7b316",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-community-2022.3.1.tar.gz",
|
||||
"build_number": "223.8214.51"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "0ae72d1931a6effbeb2329f6e5c35859d933798a494479f066ef0a7b2be6b553",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-community-2022.3.2.tar.gz",
|
||||
"build_number": "223.8617.48"
|
||||
},
|
||||
"pycharm-professional": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}.tar.gz",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "8f845077cc0fa3582348ee3d76a69ff001391b3f3d63a9b279b8039fd6e07622",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-professional-2022.3.1.tar.gz",
|
||||
"build_number": "223.8214.51"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "56430090dd471e106fdc48463027d89de624759f8757248ced9776978854e4f6",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-professional-2022.3.2.tar.gz",
|
||||
"build_number": "223.8617.48"
|
||||
},
|
||||
"rider": {
|
||||
"update-channel": "Rider RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rider/JetBrains.Rider-{version}.tar.gz",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "d785f02e355983c6762248860052a81f75b392e25b585ff5a913aeaa2a2a3010",
|
||||
"url": "https://download.jetbrains.com/rider/JetBrains.Rider-2022.3.1.tar.gz",
|
||||
"build_number": "223.8214.53"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "ad853b75bc1e1379593bece3a5fbecec21d1de30263d0d5fef067a352b7d27ef",
|
||||
"url": "https://download.jetbrains.com/rider/JetBrains.Rider-2022.3.2.tar.gz",
|
||||
"build_number": "223.8617.53"
|
||||
},
|
||||
"ruby-mine": {
|
||||
"update-channel": "RubyMine RELEASE",
|
||||
@ -110,26 +110,26 @@
|
||||
"clion": {
|
||||
"update-channel": "CLion RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "e6246c929e0d0b9340b66dd282572d67db7bf6031d5789f197be8817de54b186",
|
||||
"url": "https://download.jetbrains.com/cpp/CLion-2022.3.1.dmg",
|
||||
"build_number": "223.8214.51"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "482461646f61f355c7fd976e655bf77dadfa545483c6ab47352ff22eb1193e33",
|
||||
"url": "https://download.jetbrains.com/cpp/CLion-2022.3.2.dmg",
|
||||
"build_number": "223.8617.54"
|
||||
},
|
||||
"datagrip": {
|
||||
"update-channel": "DataGrip RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/datagrip/datagrip-{version}.dmg",
|
||||
"version": "2022.3.2",
|
||||
"sha256": "3c91269f04bd6f6df0ae8f2042c029097f56c2ccbc45db95b4f66e87e9d4a320",
|
||||
"url": "https://download.jetbrains.com/datagrip/datagrip-2022.3.2.dmg",
|
||||
"build_number": "223.8214.62"
|
||||
"version": "2022.3.3",
|
||||
"sha256": "e9da8036c7d268368b3f82034389481730cb663b809659b1fa1ab91fd9bdc8cd",
|
||||
"url": "https://download.jetbrains.com/datagrip/datagrip-2022.3.3.dmg",
|
||||
"build_number": "223.8617.3"
|
||||
},
|
||||
"gateway": {
|
||||
"update-channel": "Gateway RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-{version}.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "4b86b523b02f2df5150bc965bcef7e1a0bf7a7e6d2233a3a2603529a8577dd43",
|
||||
"url": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-223.8214.51.dmg",
|
||||
"build_number": "223.8214.51"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "26ff68ea27952c1adc651ad5f2fae7ad4ca7b744f70f582bdf1bd4c1d17132f4",
|
||||
"url": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-223.8617.56.dmg",
|
||||
"build_number": "223.8617.56"
|
||||
},
|
||||
"goland": {
|
||||
"update-channel": "GoLand RELEASE",
|
||||
@ -142,18 +142,18 @@
|
||||
"idea-community": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIC-{version}.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "8ea8b1ceebde397950592708b55f277ca43856b4013f597ccbf385bb75a42c72",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIC-2022.3.1.dmg",
|
||||
"build_number": "223.8214.52"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "14b3f587e868adfb132791e17e3b1978a2fb5fd55447eae589c4d95d70c9ace7",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIC-2022.3.2.dmg",
|
||||
"build_number": "223.8617.56"
|
||||
},
|
||||
"idea-ultimate": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIU-{version}.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "5278cf5ded9464b284fa568f2b453eb5b207a0c75e26354bfb66ef8e96be85e6",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIU-2022.3.1.dmg",
|
||||
"build_number": "223.8214.52"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "54d51ba7b65f84545faa7f8fc001b2bce48ef3ddb76006a44de9e95c6b395b8c",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIU-2022.3.2.dmg",
|
||||
"build_number": "223.8617.56"
|
||||
},
|
||||
"mps": {
|
||||
"update-channel": "MPS RELEASE",
|
||||
@ -175,26 +175,26 @@
|
||||
"pycharm-community": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "adfb73d85ffb30c2abf715a6c6a0a2ed64a047a3016021a2cb61838457c66a81",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-community-2022.3.1.dmg",
|
||||
"build_number": "223.8214.51"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "0a5a396b71533ab7ec77b2f10e08a20a970ac5712cfeb3378728020ec84be416",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-community-2022.3.2.dmg",
|
||||
"build_number": "223.8617.48"
|
||||
},
|
||||
"pycharm-professional": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "2e3bff74a53df74ceee0ac182ffc2f22248317ced0a33f8c0014b1ed504d9650",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-professional-2022.3.1.dmg",
|
||||
"build_number": "223.8214.51"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "6537fe033c13fb9b06da7583c875b0dc5f20660e5b349edc39bd8fdddffaf0f3",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-professional-2022.3.2.dmg",
|
||||
"build_number": "223.8617.48"
|
||||
},
|
||||
"rider": {
|
||||
"update-channel": "Rider RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rider/JetBrains.Rider-{version}.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "9d73b21e558db89ac24a406187cb96e506e320ca0154e8db6aeac7ff960c8944",
|
||||
"url": "https://download.jetbrains.com/rider/JetBrains.Rider-2022.3.1.dmg",
|
||||
"build_number": "223.8214.53"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "896dadb76b44bacef79b31619719107f8cf0e729331bda2d6b9f80e8be6dea92",
|
||||
"url": "https://download.jetbrains.com/rider/JetBrains.Rider-2022.3.2.dmg",
|
||||
"build_number": "223.8617.53"
|
||||
},
|
||||
"ruby-mine": {
|
||||
"update-channel": "RubyMine RELEASE",
|
||||
@ -217,26 +217,26 @@
|
||||
"clion": {
|
||||
"update-channel": "CLion RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}-aarch64.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "85ee94f4dac126ee2b87ab225f9be6fa828a0c17e067b896f541fd25599411ef",
|
||||
"url": "https://download.jetbrains.com/cpp/CLion-2022.3.1-aarch64.dmg",
|
||||
"build_number": "223.8214.51"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "0d3d8ccce520a26781a2d126b887d5a829e97987b728104203528510ff9a4423",
|
||||
"url": "https://download.jetbrains.com/cpp/CLion-2022.3.2-aarch64.dmg",
|
||||
"build_number": "223.8617.54"
|
||||
},
|
||||
"datagrip": {
|
||||
"update-channel": "DataGrip RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/datagrip/datagrip-{version}-aarch64.dmg",
|
||||
"version": "2022.3.2",
|
||||
"sha256": "13c8503f190e82b00949b26312873976a10c64dcca036ecc6ce9547b69341658",
|
||||
"url": "https://download.jetbrains.com/datagrip/datagrip-2022.3.2-aarch64.dmg",
|
||||
"build_number": "223.8214.62"
|
||||
"version": "2022.3.3",
|
||||
"sha256": "ef76c7d61c64f7f0f831ef2774bd908e68d651a20648fc4e63618e24a81be6dd",
|
||||
"url": "https://download.jetbrains.com/datagrip/datagrip-2022.3.3-aarch64.dmg",
|
||||
"build_number": "223.8617.3"
|
||||
},
|
||||
"gateway": {
|
||||
"update-channel": "Gateway RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-{version}-aarch64.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "555ca346ec41de06223d3a4b5e9247809e07c8339bff0d139b624634c812c8e5",
|
||||
"url": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-223.8214.51-aarch64.dmg",
|
||||
"build_number": "223.8214.51"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "776ff0a5f0293cd4b4c29380199757b359e6e195a57b69d2cef73f9cc44ee456",
|
||||
"url": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-223.8617.56-aarch64.dmg",
|
||||
"build_number": "223.8617.56"
|
||||
},
|
||||
"goland": {
|
||||
"update-channel": "GoLand RELEASE",
|
||||
@ -249,18 +249,18 @@
|
||||
"idea-community": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIC-{version}-aarch64.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "394478e3f2a2ea1788a5c2ef9c5a9db72531462b4db921483d24a08f7c260a43",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIC-2022.3.1-aarch64.dmg",
|
||||
"build_number": "223.8214.52"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "808fa52e8dceacb8beb6b84705ac44ded04b67d07c1310449d7cd5c7afbdea46",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIC-2022.3.2-aarch64.dmg",
|
||||
"build_number": "223.8617.56"
|
||||
},
|
||||
"idea-ultimate": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIU-{version}-aarch64.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "1e9454c2500e1ec0d490e19d175a30f4441ffd30200a5a1041ecbeff3c66c7e4",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIU-2022.3.1-aarch64.dmg",
|
||||
"build_number": "223.8214.52"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "ea6da172fc8f27b7bad5475f0e1fc3359c492885bba8b6de59be727cb7b65284",
|
||||
"url": "https://download.jetbrains.com/idea/ideaIU-2022.3.2-aarch64.dmg",
|
||||
"build_number": "223.8617.56"
|
||||
},
|
||||
"mps": {
|
||||
"update-channel": "MPS RELEASE",
|
||||
@ -282,26 +282,26 @@
|
||||
"pycharm-community": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}-aarch64.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "6574cfd20a586fcbdfbac2ea0fa903ea078c1702fd9e5145c33c7c8dc4506388",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-community-2022.3.1-aarch64.dmg",
|
||||
"build_number": "223.8214.51"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "5a0fcb9fdc94896cd5651d9d60fa708596aebe374bc35944b3ff6133f4eb5aae",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-community-2022.3.2-aarch64.dmg",
|
||||
"build_number": "223.8617.48"
|
||||
},
|
||||
"pycharm-professional": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}-aarch64.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "640e4088d976820808d4571c8060b473ab6cfde34699d5913ec3c528ca70faac",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-professional-2022.3.1-aarch64.dmg",
|
||||
"build_number": "223.8214.51"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "3237e19f920880a92712d7a61df5eadd6b8e1652cf97115078289468e17332a4",
|
||||
"url": "https://download.jetbrains.com/python/pycharm-professional-2022.3.2-aarch64.dmg",
|
||||
"build_number": "223.8617.48"
|
||||
},
|
||||
"rider": {
|
||||
"update-channel": "Rider RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rider/JetBrains.Rider-{version}-aarch64.dmg",
|
||||
"version": "2022.3.1",
|
||||
"sha256": "d25ba49504c22e8669b8e15033cb6e944e9948ecbb0394ba4bbd5804f1f6657f",
|
||||
"url": "https://download.jetbrains.com/rider/JetBrains.Rider-2022.3.1-aarch64.dmg",
|
||||
"build_number": "223.8214.53"
|
||||
"version": "2022.3.2",
|
||||
"sha256": "a680b91d6c909f913317c91b1912b1b822c121d14d78962f7f44f7473e54b5a2",
|
||||
"url": "https://download.jetbrains.com/rider/JetBrains.Rider-2022.3.2-aarch64.dmg",
|
||||
"build_number": "223.8617.53"
|
||||
},
|
||||
"ruby-mine": {
|
||||
"update-channel": "RubyMine RELEASE",
|
||||
|
@ -2580,8 +2580,8 @@ let
|
||||
mktplcRef = {
|
||||
name = "code-spell-checker";
|
||||
publisher = "streetsidesoftware";
|
||||
version = "2.14.0";
|
||||
sha256 = "sha256-DvcQ0wNmWqmMen7jYVP0tCDz/wdzBb56An+OaD3d4xA=";
|
||||
version = "2.15.0";
|
||||
sha256 = "sha256-YfcO/01nO+92xZEJgYyLYAkqXMqfV/QDkcN9Dnjp5ZA=";
|
||||
};
|
||||
meta = with lib; {
|
||||
changelog = "https://marketplace.visualstudio.com/items/streetsidesoftware.code-spell-checker/changelog";
|
||||
|
@ -30,25 +30,31 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "sha256-IMCS6bJqOzPeAFZyQtjzd1rQ5ugIevqoFUW6Y0w1Pzs=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
vulkan-headers
|
||||
vulkan-tools
|
||||
vulkan-loader
|
||||
glslang
|
||||
glfw
|
||||
libjpeg
|
||||
pkg-config
|
||||
rsync
|
||||
cmake
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
clang
|
||||
cmake
|
||||
glslang
|
||||
llvm
|
||||
llvmPackages.openmp
|
||||
pugixml
|
||||
freetype
|
||||
pkg-config
|
||||
rsync
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
exiv2
|
||||
ffmpeg
|
||||
libvorbis
|
||||
freetype
|
||||
glfw
|
||||
libjpeg
|
||||
libmad
|
||||
libvorbis
|
||||
llvmPackages.openmp
|
||||
pugixml
|
||||
vulkan-headers
|
||||
vulkan-loader
|
||||
vulkan-tools
|
||||
];
|
||||
|
||||
dontUseCmakeConfigure = true;
|
||||
@ -60,5 +66,7 @@ stdenv.mkDerivation rec {
|
||||
homepage = "https://github.com/hanatos/vkdt";
|
||||
license = licenses.bsd2;
|
||||
maintainers = with maintainers; [ paperdigits ];
|
||||
platforms = platforms.linux;
|
||||
broken = stdenv.isAarch64;
|
||||
};
|
||||
}
|
||||
|
@ -45,10 +45,10 @@
|
||||
# Those pieces of software we entirely ignore upstream's handling of, and just
|
||||
# make sure they're in the path if desired.
|
||||
let
|
||||
k3sVersion = "1.26.0+k3s2"; # k3s git tag
|
||||
k3sCommit = "f0ec6a4c127b2c671b271974a2f21783f0e3c525"; # k3s git commit at the above version
|
||||
k3sRepoSha256 = "0yc2k45s321hjir3c2wabqihk96wbjxp274dpbh9kv3471j89lkm";
|
||||
k3sVendorSha256 = "sha256-ptC39SgzCA4CULA+VmcMGlPG8KsLRbWlVI/jQrrF/RU=";
|
||||
k3sVersion = "1.26.1+k3s1"; # k3s git tag
|
||||
k3sCommit = "f10af367c3c96863c081ada4018e94e085c9404d"; # k3s git commit at the above version
|
||||
k3sRepoSha256 = "13h20yb9gyrclhv2r0vv7fnsr73i06686rm6r0pcvy72hw26i848";
|
||||
k3sVendorSha256 = "sha256-WvkuXHG6NM9eScuu7qG3HDZbBPAJ6xVPz3RRuAxP994=";
|
||||
|
||||
# nix generated by update.sh
|
||||
# Based on the traefik charts here: https://github.com/k3s-io/k3s/blob/d71ab6317e22dd34673faa307a412a37a16767f6/scripts/download#L29-L32
|
||||
@ -65,8 +65,8 @@ let
|
||||
k3sCNISha256 = "14mb3zsqibj1sn338gjmsyksbm0mxv9p016dij7zidccx2rzn6nl";
|
||||
|
||||
# taken from ./scripts/version.sh VERSION_CONTAINERD
|
||||
containerdVersion = "1.6.14-k3s1";
|
||||
containerdSha256 = "01zs2xbpmww6hdh248px4dlh1n7xy9gzj2b8afyfmv3c2m2alf5p";
|
||||
containerdVersion = "1.6.15-k3s1";
|
||||
containerdSha256 = "1bzmryqqdpmxl4471wda5q9hqjlgzcmsbwxcwd2ap34qx27my1qd";
|
||||
|
||||
# run `grep github.com/kubernetes-sigs/cri-tools go.mod | head -n1 | awk '{print $4}'` in the k3s repo at the tag
|
||||
criCtlVersion = "1.26.0-rc.0-k3s1";
|
||||
|
@ -10,13 +10,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "werf";
|
||||
version = "1.2.197";
|
||||
version = "1.2.198";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "werf";
|
||||
repo = "werf";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-cRpXdV/aHxVxMd54nmf9bMogiC9V8ryvCtSe+6Vx/Hk=";
|
||||
hash = "sha256-fJDcVqHVN+2KXoqFCTACDevFtOllEGDMcQO/oDb6GMI=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-GjcmpHyjhjCWE5gQR/oTHfhHYg5WRu8uhgAuWhdxlYk=";
|
||||
@ -64,6 +64,10 @@ buildGoModule rec {
|
||||
integration/suites \
|
||||
pkg/true_git/*test.go \
|
||||
test/e2e
|
||||
'' + lib.optionalString (stdenv.isLinux && stdenv.isAarch64) ''
|
||||
# Remove failing tests.
|
||||
rm -rf \
|
||||
cmd/werf/docs/replacers/kubectl/kubectl_test.go
|
||||
'' + lib.optionalString (CGO_ENABLED == 0) ''
|
||||
# A workaround for osusergo.
|
||||
export USER=nixbld
|
||||
|
@ -30,7 +30,7 @@
|
||||
openjdk17.overrideAttrs (oldAttrs: rec {
|
||||
pname = "jetbrains-jdk-jcef";
|
||||
javaVersion = "17.0.5";
|
||||
build = "653.14";
|
||||
build = "653.25";
|
||||
# To get the new tag:
|
||||
# git clone https://github.com/jetbrains/jetbrainsruntime
|
||||
# cd jetbrainsruntime
|
||||
@ -43,7 +43,7 @@ openjdk17.overrideAttrs (oldAttrs: rec {
|
||||
owner = "JetBrains";
|
||||
repo = "JetBrainsRuntime";
|
||||
rev = "jb${version}";
|
||||
hash = "sha256-7Nx7Y12oMfs4zeQMSfnUaDCW1xJYMEkcoTapSpmVCfU=";
|
||||
hash = "sha256-/3NzluFpzKC8mFQxrKY9WlgBh9asbEE7lrGJy/ZJXRU=";
|
||||
};
|
||||
|
||||
BOOT_JDK = openjdk17-bootstrap.home;
|
||||
|
@ -5,14 +5,14 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "svdtools";
|
||||
version = "0.2.7";
|
||||
version = "0.2.8";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit version pname;
|
||||
sha256 = "sha256-pRY9lL04BcZDYeFcdArIp2PcWiCZBurCYpYtYhPqFsg=";
|
||||
sha256 = "sha256-x0C+1Ld4RImmS6x9l9jQaZ/sEd3iLFmmwOWNfA+xYsk=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-9XymDE9ON11VfZObrMiARmpJay2g2mKEf0l2eojbjL8=";
|
||||
cargoSha256 = "sha256-U1YiQdfk/SgRicAND0X8KdHKgX7wHnYspWNF270WDrE=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Tools to handle vendor-supplied, often buggy SVD files";
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cmark";
|
||||
version = "0.30.2";
|
||||
version = "0.30.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jgm";
|
||||
owner = "commonmark";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-IkNybUe/XYwAvPowym3aqfVyvNdw2t/brRjhOrjVRpA=";
|
||||
sha256 = "sha256-/7TzaZYP8lndkfRPgCpBbazUBytVLXxqWHYktIsGox0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
@ -29,9 +29,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = with lib; {
|
||||
description = "CommonMark parsing and rendering library and program in C";
|
||||
homepage = "https://github.com/jgm/cmark";
|
||||
homepage = "https://github.com/commonmark/cmark";
|
||||
changelog = "https://github.com/commonmark/cmark/raw/${version}/changelog.txt";
|
||||
maintainers = [ maintainers.michelk ];
|
||||
platforms = platforms.unix;
|
||||
platforms = platforms.all;
|
||||
license = licenses.bsd2;
|
||||
};
|
||||
}
|
||||
|
@ -24,13 +24,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gtksourceview";
|
||||
version = "5.6.1";
|
||||
version = "5.6.2";
|
||||
|
||||
outputs = [ "out" "dev" "devdoc" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "ZZ2cydA0oRTwfn4TTugNd97ASXyxUWrlNpEZwvy52hY=";
|
||||
sha256 = "HxRsFW8TWmBJnZeeNXfJm24VoRFEV2er5iGbs0xUXHc=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -5,13 +5,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libnats";
|
||||
version = "3.5.0";
|
||||
version = "3.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nats-io";
|
||||
repo = "nats.c";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-mdOvJkCdJ2QEsVUdxVCpIDLn4+6JM6OeJfasJxqqID8=";
|
||||
sha256 = "sha256-L/RS/M0TQJEMXRvdwo03st1VAlIlJ/fCmTvx+0+gCGE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -6,14 +6,14 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.7.22";
|
||||
version = "0.7.23";
|
||||
pname = "libsolv";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "openSUSE";
|
||||
repo = "libsolv";
|
||||
rev = version;
|
||||
sha256 = "sha256-rqWQJz3gZuhcNblyFWiYCC17miNY8F5xguAJwDk3xFE=";
|
||||
sha256 = "sha256-i1g4arr8rII9SzdyITD6xS9CAVN6zP73gFwnZdkc5os=";
|
||||
};
|
||||
|
||||
cmakeFlags = [
|
||||
|
@ -4,13 +4,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pmix";
|
||||
version = "3.2.3";
|
||||
version = "3.2.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = "openpmix";
|
||||
owner = "openpmix";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-w3j4zgEAn6RxIHAvy0B3MPFTV46ocCvc0Z36tN1T+rc=";
|
||||
sha256 = "sha256-79zTZm549VRsqeziCuBT6l4jTJ6D/gZaMAvgHZm7jn4=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -8,13 +8,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "s2n-tls";
|
||||
version = "1.3.33";
|
||||
version = "1.3.34";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aws";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-MfVRAv5Ss+QMjY3IhFJakUO05w6j5WaAM0cCdtLIgAk=";
|
||||
sha256 = "sha256-CaVo2OxfB7ImMOgPuyvKQFbTeEm3PqD8CV96jUEZ8U0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -9,13 +9,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "sentry-native";
|
||||
version = "0.5.3";
|
||||
version = "0.5.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "getsentry";
|
||||
repo = "sentry-native";
|
||||
rev = version;
|
||||
hash = "sha256-zeJGgtqEITK1fQtqFXwh+kpaS9Ky+RSY/uxZ2as8YyM=";
|
||||
hash = "sha256-qRtr+Og75eowKJjezRSGlRp9Ps2A75zY80IqZMRa4Sw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -4,3 +4,12 @@
|
||||
2. `./mkrepo.sh`
|
||||
3. Check the `repo.json` diff for new stable versions of `tools`, `platform-tools`, `build-tools`, `emulator` and/or `ndk`
|
||||
4. Update the relevant argument defaults in `compose-android-packages.nix`
|
||||
|
||||
# How to run tests
|
||||
You may need to make yourself familiar with [tests](https://nixos.org/manual/nixpkgs/stable/#var-meta-tests), and [Writing larger package tests](https://nixos.org/manual/nixpkgs/stable/#ssec-package-tests-writing) in the Manual, then run tests locally with:
|
||||
|
||||
```shell
|
||||
$ export NIXPKGS_ALLOW_UNFREE=1
|
||||
$ cd path/to/nixpkgs
|
||||
$ nix-build -A androidenv.test-suite.tests
|
||||
```
|
||||
|
@ -1,4 +1,4 @@
|
||||
{deployAndroidPackage, lib, package, os, autoPatchelfHook, makeWrapper, pkgs, pkgsi686Linux}:
|
||||
{deployAndroidPackage, lib, package, os, autoPatchelfHook, makeWrapper, pkgs, pkgsi686Linux, postInstall}:
|
||||
|
||||
deployAndroidPackage {
|
||||
inherit package os;
|
||||
@ -19,6 +19,8 @@ deployAndroidPackage {
|
||||
wrapProgram $PWD/mainDexClasses \
|
||||
--prefix PATH : ${pkgs.jdk8}/bin
|
||||
''}
|
||||
'';
|
||||
|
||||
cd $out/libexec/android-sdk
|
||||
'' + postInstall;
|
||||
noAuditTmpdir = true; # The checker script gets confused by the build-tools path that is incorrectly identified as a reference to /build
|
||||
}
|
||||
|
39
pkgs/development/mobile/androidenv/cmdline-tools.nix
Normal file
39
pkgs/development/mobile/androidenv/cmdline-tools.nix
Normal file
@ -0,0 +1,39 @@
|
||||
{deployAndroidPackage, lib, package, autoPatchelfHook, makeWrapper, os, pkgs, pkgsi686Linux, stdenv, cmdLineToolsVersion, postInstall}:
|
||||
|
||||
deployAndroidPackage {
|
||||
name = "androidsdk";
|
||||
inherit package os;
|
||||
nativeBuildInputs = [ makeWrapper ]
|
||||
++ lib.optionals stdenv.isLinux [ autoPatchelfHook ];
|
||||
|
||||
patchInstructions = ''
|
||||
${lib.optionalString (os == "linux") ''
|
||||
# Auto patch all binaries
|
||||
autoPatchelf .
|
||||
''}
|
||||
|
||||
# Strip double dots from the root path
|
||||
export ANDROID_SDK_ROOT="$out/libexec/android-sdk"
|
||||
|
||||
# Wrap all scripts that require JAVA_HOME
|
||||
find $ANDROID_SDK_ROOT/cmdline-tools/${cmdLineToolsVersion}/bin -maxdepth 1 -type f -executable | while read program; do
|
||||
if grep -q "JAVA_HOME" $program; then
|
||||
wrapProgram $program --prefix PATH : ${pkgs.jdk11}/bin \
|
||||
--prefix ANDROID_SDK_ROOT : $ANDROID_SDK_ROOT
|
||||
fi
|
||||
done
|
||||
|
||||
# Wrap sdkmanager script
|
||||
wrapProgram $ANDROID_SDK_ROOT/cmdline-tools/${cmdLineToolsVersion}/bin/sdkmanager \
|
||||
--prefix PATH : ${lib.makeBinPath [ pkgs.jdk11 ]} \
|
||||
--add-flags "--sdk_root=$ANDROID_SDK_ROOT"
|
||||
|
||||
# Patch all script shebangs
|
||||
patchShebangs $ANDROID_SDK_ROOT/cmdline-tools/${cmdLineToolsVersion}/bin
|
||||
|
||||
cd $ANDROID_SDK_ROOT
|
||||
${postInstall}
|
||||
'';
|
||||
|
||||
meta.license = lib.licenses.unfree;
|
||||
}
|
@ -2,7 +2,8 @@
|
||||
, licenseAccepted ? false
|
||||
}:
|
||||
|
||||
{ toolsVersion ? "26.1.1"
|
||||
{ cmdLineToolsVersion ? "8.0"
|
||||
, toolsVersion ? "26.1.1"
|
||||
, platformToolsVersion ? "33.0.3"
|
||||
, buildToolsVersions ? [ "33.0.1" ]
|
||||
, includeEmulator ? false
|
||||
@ -132,16 +133,40 @@ rec {
|
||||
package = packages.platform-tools.${platformToolsVersion};
|
||||
};
|
||||
|
||||
tools = callPackage ./tools.nix {
|
||||
inherit deployAndroidPackage os;
|
||||
package = packages.tools.${toolsVersion};
|
||||
|
||||
postInstall = ''
|
||||
${linkPlugin { name = "platform-tools"; plugin = platform-tools; }}
|
||||
${linkPlugin { name = "patcher"; plugin = patcher; }}
|
||||
${linkPlugin { name = "emulator"; plugin = emulator; }}
|
||||
'';
|
||||
};
|
||||
|
||||
patcher = callPackage ./patcher.nix {
|
||||
inherit deployAndroidPackage os;
|
||||
package = packages.patcher."1";
|
||||
};
|
||||
|
||||
build-tools = map (version:
|
||||
callPackage ./build-tools.nix {
|
||||
inherit deployAndroidPackage os;
|
||||
package = packages.build-tools.${version};
|
||||
|
||||
postInstall = ''
|
||||
${linkPlugin { name = "tools"; plugin = tools; check = toolsVersion != null; }}
|
||||
'';
|
||||
}
|
||||
) buildToolsVersions;
|
||||
|
||||
emulator = callPackage ./emulator.nix {
|
||||
inherit deployAndroidPackage os;
|
||||
package = packages.emulator.${emulatorVersion};
|
||||
|
||||
postInstall = ''
|
||||
${linkSystemImages { images = system-images; check = includeSystemImages; }}
|
||||
'';
|
||||
};
|
||||
|
||||
platforms = map (version:
|
||||
@ -238,9 +263,19 @@ rec {
|
||||
# Function that automatically links a plugin for which only one version exists
|
||||
linkPlugin = {name, plugin, check ? true}:
|
||||
lib.optionalString check ''
|
||||
ln -s ${plugin}/libexec/android-sdk/* ${name}
|
||||
ln -s ${plugin}/libexec/android-sdk/${name} ${name}
|
||||
'';
|
||||
|
||||
linkSystemImages = { images, check }: lib.optionalString check ''
|
||||
mkdir -p system-images
|
||||
${lib.concatMapStrings (system-image: ''
|
||||
apiVersion=$(basename $(echo ${system-image}/libexec/android-sdk/system-images/*))
|
||||
type=$(basename $(echo ${system-image}/libexec/android-sdk/system-images/*/*))
|
||||
mkdir -p system-images/$apiVersion/$type
|
||||
ln -s ${system-image}/libexec/android-sdk/system-images/$apiVersion/$type/* system-images/$apiVersion/$type
|
||||
'') images}
|
||||
'';
|
||||
|
||||
# Links all plugins related to a requested platform
|
||||
linkPlatformPlugins = {name, plugins, check}:
|
||||
lib.optionalString check ''
|
||||
@ -260,12 +295,16 @@ rec {
|
||||
${lib.concatMapStringsSep "\n" (str: " - ${str}") licenseNames}
|
||||
|
||||
by setting nixpkgs config option 'android_sdk.accept_license = true;'.
|
||||
'' else callPackage ./tools.nix {
|
||||
inherit deployAndroidPackage packages toolsVersion os;
|
||||
'' else callPackage ./cmdline-tools.nix {
|
||||
inherit deployAndroidPackage os cmdLineToolsVersion;
|
||||
|
||||
package = packages.cmdline-tools.${cmdLineToolsVersion};
|
||||
|
||||
postInstall = ''
|
||||
# Symlink all requested plugins
|
||||
${linkPlugin { name = "platform-tools"; plugin = platform-tools; }}
|
||||
${linkPlugin { name = "tools"; plugin = tools; check = toolsVersion != null; }}
|
||||
${linkPlugin { name = "patcher"; plugin = patcher; }}
|
||||
${linkPlugins { name = "build-tools"; plugins = build-tools; }}
|
||||
${linkPlugin { name = "emulator"; plugin = emulator; check = includeEmulator; }}
|
||||
${linkPlugins { name = "platforms"; plugins = platforms; }}
|
||||
@ -273,17 +312,7 @@ rec {
|
||||
${linkPlugins { name = "cmake"; plugins = cmake; }}
|
||||
${linkNdkPlugins { name = "ndk-bundle"; rootName = "ndk"; plugins = ndk-bundles; }}
|
||||
${linkNdkPlugin { name = "ndk-bundle"; plugin = ndk-bundle; check = includeNDK; }}
|
||||
|
||||
${lib.optionalString includeSystemImages ''
|
||||
mkdir -p system-images
|
||||
${lib.concatMapStrings (system-image: ''
|
||||
apiVersion=$(basename $(echo ${system-image}/libexec/android-sdk/system-images/*))
|
||||
type=$(basename $(echo ${system-image}/libexec/android-sdk/system-images/*/*))
|
||||
mkdir -p system-images/$apiVersion/$type
|
||||
ln -s ${system-image}/libexec/android-sdk/system-images/$apiVersion/$type/* system-images/$apiVersion/$type
|
||||
'') system-images}
|
||||
''}
|
||||
|
||||
${linkSystemImages { images = system-images; check = includeSystemImages; }}
|
||||
${linkPlatformPlugins { name = "add-ons"; plugins = google-apis; check = useGoogleAPIs; }}
|
||||
${linkPlatformPlugins { name = "add-ons"; plugins = google-apis; check = useGoogleTVAddOns; }}
|
||||
|
||||
@ -304,27 +333,19 @@ rec {
|
||||
|
||||
# Expose common executables in bin/
|
||||
mkdir -p $out/bin
|
||||
find $PWD/tools -not -path '*/\.*' -type f -executable -mindepth 1 -maxdepth 1 | while read i
|
||||
do
|
||||
|
||||
for i in ${platform-tools}/bin/*; do
|
||||
ln -s $i $out/bin
|
||||
done
|
||||
|
||||
find $PWD/tools/bin -not -path '*/\.*' -type f -executable -mindepth 1 -maxdepth 1 | while read i
|
||||
do
|
||||
for i in ${emulator}/bin/*; do
|
||||
ln -s $i $out/bin
|
||||
done
|
||||
|
||||
for i in ${platform-tools}/bin/*
|
||||
do
|
||||
find $ANDROID_SDK_ROOT/cmdline-tools/${cmdLineToolsVersion}/bin -type f -executable | while read i; do
|
||||
ln -s $i $out/bin
|
||||
done
|
||||
|
||||
# the emulator auto-linked from platform-tools does not find its local qemu, while this one does
|
||||
${lib.optionalString includeEmulator ''
|
||||
rm $out/bin/emulator
|
||||
ln -s $out/libexec/android-sdk/emulator/emulator $out/bin
|
||||
''}
|
||||
|
||||
# Write licenses
|
||||
mkdir -p licenses
|
||||
${lib.concatMapStrings (licenseName:
|
||||
|
@ -19,4 +19,6 @@ rec {
|
||||
platformVersions = [ "28" ];
|
||||
abiVersions = [ "x86" "x86_64"];
|
||||
};
|
||||
|
||||
test-suite = pkgs.callPackage ./test-suite.nix {};
|
||||
}
|
||||
|
@ -4,6 +4,59 @@
|
||||
let
|
||||
extraParams = removeAttrs args [ "packages" "os" "buildInputs" "nativeBuildInputs" "patchesInstructions" ];
|
||||
sortedPackages = builtins.sort (x: y: builtins.lessThan x.name y.name) packages;
|
||||
|
||||
mkXmlAttrs = attrs:
|
||||
lib.concatStrings (lib.mapAttrsToList (name: value: " ${name}=\"${value}\"") attrs);
|
||||
mkXmlValues = attrs:
|
||||
lib.concatStrings (lib.mapAttrsToList (name: value:
|
||||
let
|
||||
tag = builtins.head (builtins.match "([^:]+).*" name);
|
||||
in
|
||||
if builtins.typeOf value == "string" then "<${tag}>${value}</${tag}>" else mkXmlDoc name value
|
||||
) attrs);
|
||||
mkXmlDoc = name: doc:
|
||||
let
|
||||
tag = builtins.head (builtins.match "([^:]+).*" name);
|
||||
hasXmlAttrs = builtins.hasAttr "element-attributes" doc;
|
||||
xmlValues = removeAttrs doc [ "element-attributes" ];
|
||||
hasXmlValues = builtins.length (builtins.attrNames xmlValues) > 0;
|
||||
in
|
||||
if hasXmlAttrs && hasXmlValues then "<${tag}${mkXmlAttrs doc.element-attributes}>${mkXmlValues xmlValues }</${tag}>"
|
||||
else if hasXmlAttrs && !hasXmlValues then "<${tag}${mkXmlAttrs doc.element-attributes}/>"
|
||||
else if !hasXmlAttrs && hasXmlValues then "<${tag}>${mkXmlValues xmlValues}</${tag}>"
|
||||
else "<${tag}/>";
|
||||
mkXmlPackage = package: ''
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<ns2:repository
|
||||
xmlns:ns2="http://schemas.android.com/repository/android/common/02"
|
||||
xmlns:ns3="http://schemas.android.com/repository/android/common/01"
|
||||
xmlns:ns4="http://schemas.android.com/repository/android/generic/01"
|
||||
xmlns:ns5="http://schemas.android.com/repository/android/generic/02"
|
||||
xmlns:ns6="http://schemas.android.com/sdk/android/repo/addon2/01"
|
||||
xmlns:ns7="http://schemas.android.com/sdk/android/repo/addon2/02"
|
||||
xmlns:ns8="http://schemas.android.com/sdk/android/repo/addon2/03"
|
||||
xmlns:ns9="http://schemas.android.com/sdk/android/repo/repository2/01"
|
||||
xmlns:ns10="http://schemas.android.com/sdk/android/repo/repository2/02"
|
||||
xmlns:ns11="http://schemas.android.com/sdk/android/repo/repository2/03"
|
||||
xmlns:ns12="http://schemas.android.com/sdk/android/repo/sys-img2/03"
|
||||
xmlns:ns13="http://schemas.android.com/sdk/android/repo/sys-img2/02"
|
||||
xmlns:ns14="http://schemas.android.com/sdk/android/repo/sys-img2/01"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<license id="${package.license}" type="text">${lib.concatStringsSep "---" (mkLicenses package.license)}</license>
|
||||
<localPackage path="${builtins.replaceStrings [ "/" ] [ ";" ] package.path}" obsolete="${
|
||||
if (lib.hasAttrByPath [ "obsolete" ] package)
|
||||
then package.obsolete else "false"
|
||||
}">
|
||||
${mkXmlDoc "type-details" package.type-details}
|
||||
${mkXmlDoc "revision" package.revision-details}
|
||||
${lib.optionalString (lib.hasAttrByPath [ "dependencies" ] package)
|
||||
(mkXmlDoc "dependencies" package.dependencies)
|
||||
}
|
||||
<display-name>${package.displayName}</display-name>
|
||||
<uses-license ref="${package.license}"/>
|
||||
</localPackage>
|
||||
</ns2:repository>
|
||||
'';
|
||||
in
|
||||
stdenv.mkDerivation ({
|
||||
inherit buildInputs;
|
||||
@ -44,6 +97,12 @@ stdenv.mkDerivation ({
|
||||
cd $packageBaseDir
|
||||
cp -a $extractedZip/* .
|
||||
${patchesInstructions.${package.name}}
|
||||
|
||||
if [ ! -f $packageBaseDir/package.xml ]; then
|
||||
cat << EOF > $packageBaseDir/package.xml
|
||||
${mkXmlPackage package}
|
||||
EOF
|
||||
fi
|
||||
'') packages);
|
||||
|
||||
# Some executables that have been patched with patchelf may not work any longer after they have been stripped.
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ deployAndroidPackage, lib, package, os, autoPatchelfHook, makeWrapper, pkgs, pkgsi686Linux }:
|
||||
{ deployAndroidPackage, lib, package, os, autoPatchelfHook, makeWrapper, pkgs, pkgsi686Linux, postInstall }:
|
||||
|
||||
deployAndroidPackage {
|
||||
inherit package os;
|
||||
@ -47,6 +47,15 @@ deployAndroidPackage {
|
||||
]} \
|
||||
--set QT_XKB_CONFIG_ROOT ${pkgs.xkeyboard_config}/share/X11/xkb \
|
||||
--set QTCOMPOSE ${pkgs.xorg.libX11.out}/share/X11/locale
|
||||
|
||||
mkdir -p $out/bin
|
||||
cd $out/bin
|
||||
find $out/libexec/android-sdk/emulator -type f -executable -mindepth 1 -maxdepth 1 | while read i; do
|
||||
ln -s $i
|
||||
done
|
||||
|
||||
cd $out/libexec/android-sdk
|
||||
${postInstall}
|
||||
'';
|
||||
dontMoveLib64 = true;
|
||||
}
|
||||
|
@ -25,7 +25,7 @@ let
|
||||
# versions may be used in multiple places in this Nix expression.
|
||||
android = {
|
||||
versions = {
|
||||
tools = "26.1.1";
|
||||
cmdLineToolsVersion = "8.0";
|
||||
platformTools = "33.0.3";
|
||||
buildTools = "30.0.3";
|
||||
ndk = [
|
||||
@ -60,7 +60,7 @@ let
|
||||
};
|
||||
|
||||
androidComposition = androidEnv.composeAndroidPackages {
|
||||
toolsVersion = android.versions.tools;
|
||||
cmdLineToolsVersion = android.versions.cmdLineToolsVersion;
|
||||
platformToolsVersion = android.versions.platformTools;
|
||||
buildToolsVersions = [android.versions.buildTools];
|
||||
platformVersions = android.platforms;
|
||||
@ -138,11 +138,55 @@ pkgs.mkShell rec {
|
||||
|
||||
# Write out local.properties for Android Studio.
|
||||
cat <<EOF > local.properties
|
||||
# This file was automatically generated by nix-shell.
|
||||
sdk.dir=$ANDROID_SDK_ROOT
|
||||
ndk.dir=$ANDROID_NDK_ROOT
|
||||
cmake.dir=$cmake_root
|
||||
EOF
|
||||
# This file was automatically generated by nix-shell.
|
||||
sdk.dir=$ANDROID_SDK_ROOT
|
||||
ndk.dir=$ANDROID_NDK_ROOT
|
||||
cmake.dir=$cmake_root
|
||||
EOF
|
||||
'';
|
||||
|
||||
passthru.tests = {
|
||||
sdkmanager-licenses-test = pkgs.runCommand "sdkmanager-licenses-test" {
|
||||
buildInputs = [ androidSdk jdk ];
|
||||
} ''
|
||||
if [[ ! "$(sdkmanager --licenses)" =~ "All SDK package licenses accepted." ]]; then
|
||||
echo "At least one of SDK package licenses are not accepted."
|
||||
exit 1
|
||||
fi
|
||||
touch $out
|
||||
'';
|
||||
|
||||
sdkmanager-packages-test = pkgs.runCommand "sdkmanager-packages-test" {
|
||||
buildInputs = [ androidSdk jdk ];
|
||||
} ''
|
||||
output="$(sdkmanager --list)"
|
||||
installed_packages_section=$(echo "''${output%%Available Packages*}" | awk 'NR>4 {print $1}')
|
||||
|
||||
packages=(
|
||||
"build-tools;30.0.3" "ndk-bundle" "platform-tools" \
|
||||
"platforms;android-23" "platforms;android-24" "platforms;android-25" "platforms;android-26" \
|
||||
"platforms;android-27" "platforms;android-28" "platforms;android-29" "platforms;android-30" \
|
||||
"platforms;android-31" "platforms;android-32" "platforms;android-33" \
|
||||
"sources;android-23" "sources;android-24" "sources;android-25" "sources;android-26" \
|
||||
"sources;android-27" "sources;android-28" "sources;android-29" "sources;android-30" \
|
||||
"sources;android-31" "sources;android-32" "sources;android-33" \
|
||||
"system-images;android-28;google_apis_playstore;arm64-v8a" \
|
||||
"system-images;android-29;google_apis_playstore;arm64-v8a" \
|
||||
"system-images;android-30;google_apis_playstore;arm64-v8a" \
|
||||
"system-images;android-31;google_apis_playstore;arm64-v8a" \
|
||||
"system-images;android-32;google_apis_playstore;arm64-v8a" \
|
||||
"system-images;android-33;google_apis_playstore;arm64-v8a"
|
||||
)
|
||||
|
||||
for package in "''${packages[@]}"; do
|
||||
if [[ ! $installed_packages_section =~ "$package" ]]; then
|
||||
echo "$package package was not installed."
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
touch "$out"
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -29,6 +29,49 @@ def image_url value, dir
|
||||
end
|
||||
end
|
||||
|
||||
# Returns a JSON with the data and structure of the input XML
|
||||
def to_json_collector doc
|
||||
json = {}
|
||||
index = 0
|
||||
doc.element_children.each { |node|
|
||||
if node.children.length == 1 and node.children.first.text?
|
||||
json["#{node.name}:#{index}"] ||= node.content
|
||||
index += 1
|
||||
next
|
||||
end
|
||||
json["#{node.name}:#{index}"] ||= to_json_collector node
|
||||
index += 1
|
||||
}
|
||||
element_attributes = {}
|
||||
doc.attribute_nodes.each do |attr|
|
||||
if attr.name == "type"
|
||||
type = attr.value.split(':', 2).last
|
||||
case attr.value
|
||||
when 'generic:genericDetailsType'
|
||||
element_attributes["xsi:type"] ||= "ns5:#{type}"
|
||||
when 'addon:extraDetailsType'
|
||||
element_attributes["xsi:type"] ||= "ns8:#{type}"
|
||||
when 'addon:mavenType'
|
||||
element_attributes["xsi:type"] ||= "ns8:#{type}"
|
||||
when 'sdk:platformDetailsType'
|
||||
element_attributes["xsi:type"] ||= "ns11:#{type}"
|
||||
when 'sdk:sourceDetailsType'
|
||||
element_attributes["xsi:type"] ||= "ns11:#{type}"
|
||||
when 'sys-img:sysImgDetailsType'
|
||||
element_attributes["xsi:type"] ||= "ns12:#{type}"
|
||||
when 'addon:addonDetailsType' then
|
||||
element_attributes["xsi:type"] ||= "ns8:#{type}"
|
||||
end
|
||||
else
|
||||
element_attributes[attr.name] ||= attr.value
|
||||
end
|
||||
end
|
||||
if !element_attributes.empty?
|
||||
json['element-attributes'] ||= element_attributes
|
||||
end
|
||||
json
|
||||
end
|
||||
|
||||
# Returns a tuple of [type, revision, revision components] for a package node.
|
||||
def package_revision package
|
||||
type_details = package.at_css('> type-details')
|
||||
@ -148,7 +191,7 @@ def fixup value
|
||||
else
|
||||
[k, v]
|
||||
end
|
||||
end.sort {|(k1, v1), (k2, v2)| k1 <=> k2}]
|
||||
end.sort {|(k1, v1), (k2, v2)| k1 <=> k2 }]
|
||||
end
|
||||
|
||||
# Normalize the specified license text.
|
||||
@ -189,7 +232,12 @@ def parse_package_xml doc
|
||||
display_name = text package.at_css('> display-name')
|
||||
uses_license = package.at_css('> uses-license')
|
||||
uses_license &&= uses_license['ref']
|
||||
obsolete ||= package['obsolete']
|
||||
type_details = to_json_collector package.at_css('> type-details')
|
||||
revision_details = to_json_collector package.at_css('> revision')
|
||||
archives = package_archives(package) {|url| repo_url url}
|
||||
dependencies_xml = package.at_css('> dependencies')
|
||||
dependencies = to_json_collector dependencies_xml if dependencies_xml
|
||||
|
||||
target = (packages[name] ||= {})
|
||||
target = (target[revision] ||= {})
|
||||
@ -199,6 +247,10 @@ def parse_package_xml doc
|
||||
target['revision'] ||= revision
|
||||
target['displayName'] ||= display_name
|
||||
target['license'] ||= uses_license if uses_license
|
||||
target['obsolete'] ||= obsolete if obsolete == 'true'
|
||||
target['type-details'] ||= type_details
|
||||
target['revision-details'] ||= revision_details
|
||||
target['dependencies'] ||= dependencies if dependencies
|
||||
target['archives'] ||= {}
|
||||
merge target['archives'], archives
|
||||
end
|
||||
@ -218,11 +270,17 @@ def parse_image_xml doc
|
||||
display_name = text package.at_css('> display-name')
|
||||
uses_license = package.at_css('> uses-license')
|
||||
uses_license &&= uses_license['ref']
|
||||
obsolete &&= package['obsolete']
|
||||
type_details = to_json_collector package.at_css('> type-details')
|
||||
revision_details = to_json_collector package.at_css('> revision')
|
||||
archives = package_archives(package) {|url| image_url url, components[-2]}
|
||||
dependencies_xml = package.at_css('> dependencies')
|
||||
dependencies = to_json_collector dependencies_xml if dependencies_xml
|
||||
|
||||
target = images
|
||||
components.each do |component|
|
||||
target = (target[component] ||= {})
|
||||
target[component] ||= {}
|
||||
target = target[component]
|
||||
end
|
||||
|
||||
target['name'] ||= "system-image-#{revision}"
|
||||
@ -230,6 +288,10 @@ def parse_image_xml doc
|
||||
target['revision'] ||= revision
|
||||
target['displayName'] ||= display_name
|
||||
target['license'] ||= uses_license if uses_license
|
||||
target['obsolete'] ||= obsolete if obsolete
|
||||
target['type-details'] ||= type_details
|
||||
target['revision-details'] ||= revision_details
|
||||
target['dependencies'] ||= dependencies if dependencies
|
||||
target['archives'] ||= {}
|
||||
merge target['archives'], archives
|
||||
end
|
||||
@ -249,7 +311,12 @@ def parse_addon_xml doc
|
||||
display_name = text package.at_css('> display-name')
|
||||
uses_license = package.at_css('> uses-license')
|
||||
uses_license &&= uses_license['ref']
|
||||
obsolete &&= package['obsolete']
|
||||
type_details = to_json_collector package.at_css('> type-details')
|
||||
revision_details = to_json_collector package.at_css('> revision')
|
||||
archives = package_archives(package) {|url| repo_url url}
|
||||
dependencies_xml = package.at_css('> dependencies')
|
||||
dependencies = to_json_collector dependencies_xml if dependencies_xml
|
||||
|
||||
case type
|
||||
when 'addon:addonDetailsType'
|
||||
@ -278,6 +345,10 @@ def parse_addon_xml doc
|
||||
target['revision'] ||= revision
|
||||
target['displayName'] ||= display_name
|
||||
target['license'] ||= uses_license if uses_license
|
||||
target['obsolete'] ||= obsolete if obsolete
|
||||
target['type-details'] ||= type_details
|
||||
target['revision-details'] ||= revision_details
|
||||
target['dependencies'] ||= dependencies if dependencies
|
||||
target['archives'] ||= {}
|
||||
merge target['archives'], archives
|
||||
end
|
||||
|
9
pkgs/development/mobile/androidenv/patcher.nix
Normal file
9
pkgs/development/mobile/androidenv/patcher.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{deployAndroidPackage, lib, package, os, autoPatchelfHook, pkgs, stdenv}:
|
||||
|
||||
deployAndroidPackage {
|
||||
inherit package os;
|
||||
nativeBuildInputs = lib.optionals stdenv.isLinux [ autoPatchelfHook ];
|
||||
patchInstructions = lib.optionalString (os == "linux") ''
|
||||
autoPatchelf $packageBaseDir/bin
|
||||
'';
|
||||
}
|
@ -4,6 +4,7 @@ deployAndroidPackage {
|
||||
inherit package os;
|
||||
nativeBuildInputs = lib.optionals (os == "linux") [ autoPatchelfHook ];
|
||||
buildInputs = lib.optionals (os == "linux") [ pkgs.glibc pkgs.zlib pkgs.ncurses5 ];
|
||||
|
||||
patchInstructions = lib.optionalString (os == "linux") ''
|
||||
addAutoPatchelfSearchPath $packageBaseDir/lib64
|
||||
autoPatchelf --no-recurse $packageBaseDir/lib64
|
||||
|
File diff suppressed because it is too large
Load Diff
16
pkgs/development/mobile/androidenv/test-suite.nix
Normal file
16
pkgs/development/mobile/androidenv/test-suite.nix
Normal file
@ -0,0 +1,16 @@
|
||||
{ stdenv, callPackage }:
|
||||
let
|
||||
examples-shell = callPackage ./examples/shell.nix {};
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "androidenv-test-suite";
|
||||
|
||||
src = ./.;
|
||||
|
||||
dontConfigure = true;
|
||||
dontBuild = true;
|
||||
|
||||
passthru.tests = { } // examples-shell.passthru.tests;
|
||||
|
||||
meta.timeout = 60;
|
||||
}
|
@ -1,26 +1,42 @@
|
||||
{deployAndroidPackage, requireFile, lib, packages, toolsVersion, os, callPackage, postInstall ? ""}:
|
||||
{deployAndroidPackage, lib, package, autoPatchelfHook, makeWrapper, os, pkgs, pkgsi686Linux, postInstall}:
|
||||
|
||||
if toolsVersion == "26.0.1" then callPackage ./tools/26.nix {
|
||||
inherit deployAndroidPackage lib os postInstall;
|
||||
package = {
|
||||
name = "tools";
|
||||
path = "tools";
|
||||
revision = "26.0.1";
|
||||
archives = {
|
||||
linux = requireFile {
|
||||
url = "https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip";
|
||||
sha256 = "185yq7qwxflw24ccm5d6zziwlc9pxmsm3f54pm9p7xm0ik724kj4";
|
||||
};
|
||||
macosx = requireFile {
|
||||
url = "https://dl.google.com/android/repository/sdk-tools-darwin-3859397.zip";
|
||||
sha256 = "1ycx9gzdaqaw6n19yvxjawywacavn1jc6sadlz5qikhgfr57b0aa";
|
||||
};
|
||||
};
|
||||
};
|
||||
} else if toolsVersion == "26.1.1" then callPackage ./tools/26.nix {
|
||||
inherit deployAndroidPackage lib os postInstall;
|
||||
package = packages.tools.${toolsVersion};
|
||||
} else callPackage ./tools/25.nix {
|
||||
inherit deployAndroidPackage lib os postInstall;
|
||||
package = packages.tools.${toolsVersion};
|
||||
deployAndroidPackage {
|
||||
name = "androidsdk";
|
||||
inherit os package;
|
||||
nativeBuildInputs = [ makeWrapper ]
|
||||
++ lib.optionals (os == "linux") [ autoPatchelfHook ];
|
||||
buildInputs = lib.optional (os == "linux") (
|
||||
(with pkgs; [ glibc freetype fontconfig fontconfig.lib])
|
||||
++ (with pkgs.xorg; [ libX11 libXrender libXext ])
|
||||
++ (with pkgsi686Linux; [ glibc xorg.libX11 xorg.libXrender xorg.libXext fontconfig.lib freetype zlib ])
|
||||
);
|
||||
|
||||
patchInstructions = ''
|
||||
${lib.optionalString (os == "linux") ''
|
||||
# Auto patch all binaries
|
||||
autoPatchelf .
|
||||
''}
|
||||
|
||||
# Wrap all scripts that require JAVA_HOME
|
||||
for i in bin; do
|
||||
find $i -maxdepth 1 -type f -executable | while read program; do
|
||||
if grep -q "JAVA_HOME" $program; then
|
||||
wrapProgram $PWD/$program --prefix PATH : ${pkgs.jdk8}/bin
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
# Wrap monitor script
|
||||
wrapProgram $PWD/monitor \
|
||||
--prefix PATH : ${pkgs.jdk8}/bin \
|
||||
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath (with pkgs; [ xorg.libX11 xorg.libXtst ])}
|
||||
|
||||
# Patch all script shebangs
|
||||
patchShebangs .
|
||||
|
||||
cd $out/libexec/android-sdk
|
||||
${postInstall}
|
||||
'';
|
||||
|
||||
meta.license = lib.licenses.unfree;
|
||||
}
|
||||
|
@ -1,62 +0,0 @@
|
||||
{deployAndroidPackage, lib, package, autoPatchelfHook, makeWrapper, os, pkgs, pkgsi686Linux, postInstall ? ""}:
|
||||
|
||||
deployAndroidPackage {
|
||||
name = "androidsdk";
|
||||
nativeBuildInputs = [ autoPatchelfHook makeWrapper ];
|
||||
buildInputs = lib.optionals (os == "linux") [ pkgs.glibc pkgs.xorg.libX11 pkgs.xorg.libXext pkgs.xorg.libXdamage pkgs.xorg.libxcb pkgs.xorg.libXfixes pkgs.xorg.libXrender pkgs.fontconfig.lib pkgs.freetype pkgs.libGL pkgs.zlib pkgs.ncurses5 pkgs.libpulseaudio pkgsi686Linux.glibc pkgsi686Linux.xorg.libX11 pkgsi686Linux.xorg.libXrender pkgsi686Linux.fontconfig pkgsi686Linux.freetype pkgsi686Linux.zlib ];
|
||||
inherit package os;
|
||||
|
||||
patchInstructions = ''
|
||||
${lib.optionalString (os == "linux") ''
|
||||
# Auto patch all binaries
|
||||
addAutoPatchelfSearchPath $PWD/lib64
|
||||
addAutoPatchelfSearchPath $PWD/lib64/libstdc++
|
||||
addAutoPatchelfSearchPath $PWD/lib64/qt/lib
|
||||
addAutoPatchelfSearchPath $PWD/lib
|
||||
addAutoPatchelfSearchPath $PWD/lib/libstdc++
|
||||
autoPatchelf .
|
||||
''}
|
||||
|
||||
# Wrap all scripts that require JAVA_HOME
|
||||
for i in bin
|
||||
do
|
||||
find $i -maxdepth 1 -type f -executable | while read program
|
||||
do
|
||||
if grep -q "JAVA_HOME" $program
|
||||
then
|
||||
wrapProgram $PWD/$program --prefix PATH : ${pkgs.jdk8}/bin
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
# Wrap programs that require java
|
||||
for i in draw9patch jobb lint screenshot2
|
||||
do
|
||||
wrapProgram $PWD/$i \
|
||||
--prefix PATH : ${pkgs.jdk8}/bin
|
||||
done
|
||||
|
||||
# Wrap programs that require java and SWT
|
||||
for i in android ddms hierarchyviewer monitor monkeyrunner traceview uiautomatorviewer
|
||||
do
|
||||
wrapProgram $PWD/$i \
|
||||
--prefix PATH : ${pkgs.jdk8}/bin \
|
||||
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ pkgs.xorg.libX11 pkgs.xorg.libXtst ]}
|
||||
done
|
||||
|
||||
${lib.optionalString (os == "linux") ''
|
||||
wrapProgram $PWD/emulator \
|
||||
--prefix PATH : ${pkgs.file}/bin:${pkgs.glxinfo}/bin:${pkgs.pciutils}/bin \
|
||||
--set QT_XKB_CONFIG_ROOT ${pkgs.xkeyboard_config}/share/X11/xkb \
|
||||
--set QTCOMPOSE ${pkgs.xorg.libX11.out}/share/X11/locale
|
||||
''}
|
||||
|
||||
# Patch all script shebangs
|
||||
patchShebangs .
|
||||
|
||||
cd ..
|
||||
${postInstall}
|
||||
'';
|
||||
|
||||
meta.license = lib.licenses.unfree;
|
||||
}
|
@ -1,45 +0,0 @@
|
||||
{deployAndroidPackage, lib, package, autoPatchelfHook, makeWrapper, os, pkgs, pkgsi686Linux, postInstall ? ""}:
|
||||
|
||||
deployAndroidPackage {
|
||||
name = "androidsdk";
|
||||
inherit os package;
|
||||
nativeBuildInputs = [ makeWrapper ]
|
||||
++ lib.optionals (os == "linux") [ autoPatchelfHook ];
|
||||
buildInputs = lib.optional (os == "linux") (
|
||||
(with pkgs; [ glibc freetype fontconfig fontconfig.lib])
|
||||
++ (with pkgs.xorg; [ libX11 libXrender libXext ])
|
||||
++ (with pkgsi686Linux; [ glibc xorg.libX11 xorg.libXrender xorg.libXext fontconfig.lib freetype zlib ])
|
||||
);
|
||||
|
||||
patchInstructions = ''
|
||||
${lib.optionalString (os == "linux") ''
|
||||
# Auto patch all binaries
|
||||
autoPatchelf .
|
||||
''}
|
||||
|
||||
# Wrap all scripts that require JAVA_HOME
|
||||
for i in bin
|
||||
do
|
||||
find $i -maxdepth 1 -type f -executable | while read program
|
||||
do
|
||||
if grep -q "JAVA_HOME" $program
|
||||
then
|
||||
wrapProgram $PWD/$program --prefix PATH : ${pkgs.jdk8}/bin
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
# Wrap monitor script
|
||||
wrapProgram $PWD/monitor \
|
||||
--prefix PATH : ${pkgs.jdk8}/bin \
|
||||
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ pkgs.xorg.libX11 pkgs.xorg.libXtst ]}
|
||||
|
||||
# Patch all script shebangs
|
||||
patchShebangs .
|
||||
|
||||
cd ..
|
||||
${postInstall}
|
||||
'';
|
||||
|
||||
meta.license = lib.licenses.unfree;
|
||||
}
|
@ -1,16 +1,20 @@
|
||||
{ lib, buildPythonPackage, fetchPypi, pygobject3, dbus }:
|
||||
{ lib, buildPythonPackage, fetchFromGitHub, pygobject3, dbus, hatchling, pytestCheckHook }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "dasbus";
|
||||
version = "1.7";
|
||||
version = "unstable-11-10-2022";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-qIUNhBrf6O5fe7n4LPRJq5tJUNwGM4lwcXGODQA2tvY=";
|
||||
src = fetchFromGitHub {
|
||||
owner = "rhinstaller";
|
||||
repo = pname;
|
||||
rev = "64b6b4d9e37cd7e0cbf4a7bf75faa7cdbd01086d";
|
||||
hash = "sha256-TmhhDrfpP+nUErAd7dUb+RtGBRtWwn3bYOoIqa0VRoc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ hatchling ];
|
||||
propagatedBuildInputs = [ pygobject3 ];
|
||||
nativeCheckInputs = [ dbus ];
|
||||
nativeCheckInputs = [ dbus pytestCheckHook ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/rhinstaller/dasbus";
|
||||
|
@ -5,11 +5,11 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "funcy";
|
||||
version = "1.17";
|
||||
version = "1.18";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "40b9b9a88141ae6a174df1a95861f2b82f2fdc17669080788b73a3ed9370e968";
|
||||
sha256 = "sha256-FUSNGajrzHpYWv56OEoZGG0L1ny/VvtCzR/Q92MT+bI=";
|
||||
};
|
||||
|
||||
# No tests
|
||||
|
@ -16,14 +16,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-automl";
|
||||
version = "2.10.0";
|
||||
version = "2.10.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-BiXbDc1nX2y1ru8+t1rrhIzFg9wLAYMj3WJhIUb6VJ8=";
|
||||
hash = "sha256-pS/fm9837vmdvh6msk69nTeo/gj1StxsfFf6DsmOQE4=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -3,18 +3,21 @@
|
||||
, fetchFromGitHub
|
||||
, pytestCheckHook
|
||||
, nodejs
|
||||
, pythonOlder
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pscript";
|
||||
version = "0.7.6";
|
||||
version = "0.7.7";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
# PyPI tarball doesn't include tests directory
|
||||
src = fetchFromGitHub {
|
||||
owner = "flexxui";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "169px5n4jjnpdn9y86f28qwd95bwf1q1rz0a1h3lb5nn5c6ym8c4";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-AhVI+7FiWyH+DfAXnau4aAHJAJtsWEpmnU90ey2z35o=";
|
||||
};
|
||||
|
||||
nativeCheckInputs = [
|
||||
@ -27,13 +30,15 @@ buildPythonPackage rec {
|
||||
rm -rf pscript_legacy
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [
|
||||
"pscript"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Python to JavaScript compiler";
|
||||
license = licenses.bsd2;
|
||||
homepage = "https://pscript.readthedocs.io";
|
||||
maintainers = [ maintainers.matthiasbeyer ];
|
||||
changelog = "https://github.com/flexxui/pscript/blob/v${version}/docs/releasenotes.rst";
|
||||
license = licenses.bsd2;
|
||||
maintainers = with maintainers; [ matthiasbeyer ];
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
38
pkgs/development/python-modules/uptime-kuma-api/default.nix
Normal file
38
pkgs/development/python-modules/uptime-kuma-api/default.nix
Normal file
@ -0,0 +1,38 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, python-socketio
|
||||
, pythonOlder
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "uptime-kuma-api";
|
||||
version = "0.9.0";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "uptime_kuma_api";
|
||||
inherit version;
|
||||
hash = "sha256-nbRBsG4Mietd6kcrvpbTbWUP0SMRXbW4mWme1G5n3ks=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
python-socketio
|
||||
python-socketio.optional-dependencies.client
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"uptime_kuma_api"
|
||||
];
|
||||
|
||||
# Tests need an uptime-kuma instance to run
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "A Python wrapper for the Uptime Kuma Socket.IO API";
|
||||
homepage = "https://github.com/lucasheld/uptime-kuma-api";
|
||||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [ julienmalka ];
|
||||
};
|
||||
}
|
@ -2,13 +2,13 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cargo-tarpaulin";
|
||||
version = "0.23.1";
|
||||
version = "0.24.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "xd009642";
|
||||
repo = "tarpaulin";
|
||||
rev = version;
|
||||
sha256 = "sha256-UDUbndsuXZDu7j+JhkS6kkFP6ju88+hXffy42XQY8gQ=";
|
||||
sha256 = "sha256-5ZezJT1oxns6ZURj41UWLpfGs5dMUi8Vdv7OtwgVTF4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec {
|
||||
buildInputs = [ openssl ]
|
||||
++ lib.optionals stdenv.isDarwin [ curl Security ];
|
||||
|
||||
cargoSha256 = "sha256-iLqxixUEZhz3Kv7D84RqVyvtoZx69dhdLKTnVnsO0k0=";
|
||||
cargoHash = "sha256-vuwpaFUzN66jNj4lrDv2idMAm24o5ftYG40N56xeoqk=";
|
||||
#checkFlags = [ "--test-threads" "1" ];
|
||||
doCheck = false;
|
||||
|
||||
|
@ -133,30 +133,30 @@ rec {
|
||||
headers = "09dbx4qh0rgp5mdm6srz6fgx12zq6b9jqq1k6l3gzyvwigi3wny1";
|
||||
};
|
||||
|
||||
electron_20 = mkElectron "20.1.3" {
|
||||
armv7l-linux = "99710a57c55d95b540f4c3568da2a7caccb7f91da23b530c8c40db5ac861ab24";
|
||||
aarch64-linux = "8f39562f20210d7cdedbb063683d632df442c8553f62104c7d676121f3d9a357";
|
||||
x86_64-linux = "219fb6f01305669f78cf1881d257e3cc48e5563330338516f8b6592d85fdb4a3";
|
||||
x86_64-darwin = "134714291dcbecbf10cbc27c490a6501e2810bd4147a74f3b2671503445f2ce8";
|
||||
aarch64-darwin = "a09f83442f1e9f4b1edc07445a1dca73d9597529b23d62731eaa3fa0488f4ab0";
|
||||
headers = "11cv0p52864k4knwlwakiq8v6rxdv3iz6kvwhn0w8mpap2h5pzii";
|
||||
electron_20 = mkElectron "20.3.11" {
|
||||
armv7l-linux = "709b9eb958e9488f6375811041179556b9cd0b8fc1eab6b899ef4a89423f98b2";
|
||||
aarch64-linux = "0f488ac9eeda2baa4c4e571fd75ac8e055dac9dcdf83051164232b1005a29224";
|
||||
x86_64-linux = "7899bf391ae35e10d78a5da622e506dd4ae859cd8c18953cd2dc54f1a5e5225e";
|
||||
x86_64-darwin = "751204887aa553c2a7811d3cb04d71e85359ccce2cf21d38e43eda24575ef4db";
|
||||
aarch64-darwin = "8ea1a446b41413b97d83d2955a4800c5f7c9061662f78c3e8d96827741f8e211";
|
||||
headers = "06s4z2hs9sbri4jsjrgybq0sn7rrx7zf3iwfg8da1wb6ahwqcd7w";
|
||||
};
|
||||
|
||||
electron_21 = mkElectron "21.2.1" {
|
||||
armv7l-linux = "1f68ffacbcd0086c5bcbc726e3a0bd707b03acdf5c82d5cc44666b6e9a0d8a78";
|
||||
aarch64-linux = "78c1c6ecf5959e67fa6c67d82dc7deb170bc10d34d45265d6e972dd5b996bcb9";
|
||||
x86_64-linux = "d8aa2ea7b1a1421ca245ced1a9bdd77408bf7aee6f75c19d5e0e73dc120442b7";
|
||||
x86_64-darwin = "f20c0be6cb51bad1bb591ec1116be622e631cbc89876b2258c55579bbe52de30";
|
||||
aarch64-darwin = "2ac1bde2bbb4a265422e00eb5e1d81302b0c349b2db6e7bf1ee6f236a68b3d53";
|
||||
headers = "1c1g6jc0p678d5sr2w4irhfkj02vm4kb92b7cvimz8an0jwy58x7";
|
||||
electron_21 = mkElectron "21.4.0" {
|
||||
armv7l-linux = "20ed4fab8b2046e10c999592ea06cd6ef13bc5826bcd7e8874c6e5e3b3cdb5b7";
|
||||
aarch64-linux = "5841060f67c23371f2739e043b51f56d04125fe781cc50e298590247477eacf2";
|
||||
x86_64-linux = "1c0da48b2b9d1fb320577429298397d67d94fbf5864d6a4f3c6eeadee3114f2e";
|
||||
x86_64-darwin = "3eea42022d21b6bb0416da8da787740b908febd2552e74cbac63bf403df0745a";
|
||||
aarch64-darwin = "aee691fd7da0343e09c4574d09e0d9962d2d1071f845ae57acf1fd9c76adbd3c";
|
||||
headers = "0zvwd3gz5y3yq5jgkswnarv75j05lfaz58w37fidq5aib1hi50hn";
|
||||
};
|
||||
|
||||
electron_22 = mkElectron "22.0.0" {
|
||||
armv7l-linux = "f2b9c870c12d4cfd6a4ac23bf937d4a89cd34381aedc2c9a64f00f22ff984985";
|
||||
aarch64-linux = "7c031d1d907953399126e9ed072db66ab7c82e3aff29c8268c8c3a83f825f5de";
|
||||
x86_64-linux = "ea0f4ad9a91bef4d5918d73c27b2731a5a93fe8917ad13d9eca83f39c5acbf05";
|
||||
x86_64-darwin = "b072e64ae563997abed9b76e30b617dfc23a33d6bba6b85fdf30c0877a6215c2";
|
||||
aarch64-darwin = "79b700953a20f4055bf94f11d7a6be9d39a7545774b45ca487cf33482828ebfd";
|
||||
headers = "06fi1m6g0g81a1lkx11ryxbic0srp4iq2z2lf2449sjnaw1sh2hr";
|
||||
electron_22 = mkElectron "22.1.0" {
|
||||
armv7l-linux = "9bad02cd8e8604400eb90d9bd8fa58b6e400321cea8db7e774908611f4fca2a2";
|
||||
aarch64-linux = "1d3e0011761f5ba05faf994a7f78cf518e49e0fef7e4528853e1bff9378d02cf";
|
||||
x86_64-linux = "543e5fa7f2b602c3cd7e62a358441faf6f490e738de9b0bd796ad65d6bbd35ee";
|
||||
x86_64-darwin = "969cad3fad6a03cbbc1658722cbf87547a8465c90dd4287fd5c03bd15bbf8a5b";
|
||||
aarch64-darwin = "4ebf838308e93ad9956f3ce3a14b8d41607ffec5cd2054818d0c91b79df101a2";
|
||||
headers = "1vydsk4fxk5hlpcs0r1s21gdr1kvxip8qc88ncs5w7ybqg31hzsh";
|
||||
};
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ let
|
||||
++ optionals (versionAtLeast version "11.0.0") [ "aarch64-darwin" ]
|
||||
++ optionals (versionOlder version "19.0.0") [ "i686-linux" ];
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
knownVulnerabilities = optional (versionOlder version "18.0.0") "Electron version ${version} is EOL";
|
||||
knownVulnerabilities = optional (versionOlder version "20.0.0") "Electron version ${version} is EOL";
|
||||
};
|
||||
|
||||
fetcher = vers: tag: hash: fetchurl {
|
||||
|
@ -17,19 +17,19 @@ let
|
||||
passthru.tests = {
|
||||
simple-c = runCommandCC "simple-c-bindgen-tests" { } ''
|
||||
echo '#include <stdlib.h>' > a.c
|
||||
${self}/bin/bindgen a.c --whitelist-function atoi | tee output
|
||||
${self}/bin/bindgen a.c --allowlist-function atoi | tee output
|
||||
grep atoi output
|
||||
touch $out
|
||||
'';
|
||||
simple-cpp = runCommandCC "simple-cpp-bindgen-tests" { } ''
|
||||
echo '#include <cmath>' > a.cpp
|
||||
${self}/bin/bindgen a.cpp --whitelist-function erf -- -xc++ | tee output
|
||||
${self}/bin/bindgen a.cpp --allowlist-function erf -- -xc++ | tee output
|
||||
grep erf output
|
||||
touch $out
|
||||
'';
|
||||
with-lib = runCommandCC "zlib-bindgen-tests" { buildInputs = [ zlib ]; } ''
|
||||
echo '#include <zlib.h>' > a.c
|
||||
${self}/bin/bindgen a.c --whitelist-function compress | tee output
|
||||
${self}/bin/bindgen a.c --allowlist-function compress | tee output
|
||||
grep compress output
|
||||
touch $out
|
||||
'';
|
||||
|
@ -7,15 +7,15 @@ let
|
||||
rustfmt-nightly = rustfmt.override { asNightly = true; };
|
||||
in rustPlatform.buildRustPackage rec {
|
||||
pname = "rust-bindgen-unwrapped";
|
||||
version = "0.61.0";
|
||||
version = "0.63.0";
|
||||
|
||||
src = fetchCrate {
|
||||
pname = "bindgen-cli";
|
||||
inherit version;
|
||||
sha256 = "sha256-sKcKIAkUC2GfAZ4tJBNweXhoFzqO95iCpHgekpOyHzc=";
|
||||
sha256 = "sha256-qynsHbcljbJyi4wq9AxEE7KIclnDqNTMFAW366JhBSo=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-P246tw5Kznpxav0LashIkLlmQGVB+aKbFUQQdmcASPw=";
|
||||
cargoSha256 = "sha256-nOPJo6vWMAcG9VG03uceYyLiJfomFERViDCZ0vFnenY=";
|
||||
|
||||
buildInputs = [ clang.cc.lib ];
|
||||
|
||||
|
@ -15,16 +15,16 @@ let
|
||||
in
|
||||
buildGoModule rec {
|
||||
pname = "minio";
|
||||
version = "2023-01-20T02-05-44Z";
|
||||
version = "2023-01-25T00-19-54Z";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "minio";
|
||||
repo = "minio";
|
||||
rev = "RELEASE.${version}";
|
||||
sha256 = "sha256-svy+rmc7RPxKaoF8VbJUpmcYTShqhX7NpPOqzSZdrt4=";
|
||||
sha256 = "sha256-1vXi9BnjTCH7B/I7tkfvm2AZtLK7a0GcMsW9gud8U/4=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-5s70UG9N6A2PklOYpvIU4Ot2vMVCEjOtue4DBaU+ryU=";
|
||||
vendorHash = "sha256-NGuslbHh0tDPQp+zvKnylLkssMglhgesLX5VT2BjDo8=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "grafana";
|
||||
version = "9.3.1";
|
||||
version = "9.3.6";
|
||||
|
||||
excludedPackages = [ "alert_webhook_listener" "clean-swagger" "release_publisher" "slow_proxy" "slow_proxy_mac" "macaron" "devenv" ];
|
||||
|
||||
@ -10,15 +10,15 @@ buildGoModule rec {
|
||||
rev = "v${version}";
|
||||
owner = "grafana";
|
||||
repo = "grafana";
|
||||
sha256 = "sha256-XZsR6h7qG2EYKv0Zr/ZjDf4WqF16khqFzYIF3ekQ08c=";
|
||||
sha256 = "sha256-7t30AvGtCyU02fOYWHYcMWgcnmkepUpZzUMR4NjIlvw=";
|
||||
};
|
||||
|
||||
srcStatic = fetchurl {
|
||||
url = "https://dl.grafana.com/oss/release/grafana-${version}.linux-amd64.tar.gz";
|
||||
sha256 = "sha256-7LIcSPxvueQYxeofzmtvvlnSboeo+TOF6xVA+g+oHqE=";
|
||||
sha256 = "sha256-jRUPrb6ocqux4SrMm/Hw/2DuG7sj2jKhSln16ynjHwM=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-oV440W9r6b74JaY8Ej2OEIPpxhdUmjq77RJOoJb6Upw=";
|
||||
vendorSha256 = "sha256-uGJ3D14qAvDkBUIlNxF1pCHMDYeuUoM8tPWfoEvA5o4=";
|
||||
|
||||
nativeBuildInputs = [ wire ];
|
||||
|
||||
|
@ -116,13 +116,13 @@ let
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "mpd";
|
||||
version = "0.23.11";
|
||||
version = "0.23.12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "MusicPlayerDaemon";
|
||||
repo = "MPD";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-vgLH4kOluK9cOmTrvpBfR87Iunn0EzH9GmiUvsjsG4I=";
|
||||
sha256 = "sha256-BnEtSkZjUBK0flVttOrjkT4RCQh9F7+MDZGm2+MMrX8=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "infra";
|
||||
version = "0.20.0";
|
||||
version = "0.21.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "infrahq";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-4sExRKq4J94cQYqjxaXCKa2aEeptCG+TTvrDOrJfBUg=";
|
||||
sha256 = "sha256-uz4wimhOfeHSL949m+biIhjfDwwEGnTiJWaz/r3Rsko=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-afbQQsluZjgliNxSOGcTS1DJwj7en5NpxtuzCDAyv98=";
|
||||
vendorHash = "sha256-qbmaebQcD3cN+tbmzzJbry0AXz2LZFMoqbcBwGGrRo4=";
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
|
@ -1,42 +1,26 @@
|
||||
From 56873cf29974ff0dfc1ba1afb7022ce49e300835 Mon Sep 17 00:00:00 2001
|
||||
From: Maximilian Bosch <maximilian@mbosch.me>
|
||||
Date: Wed, 11 Nov 2020 11:58:25 +0100
|
||||
Subject: [PATCH 2/2] Make sure that the setuid-wrapped `umount` is invoked
|
||||
|
||||
---
|
||||
src/dav_fuse.c | 2 +-
|
||||
src/umount_davfs.c | 4 ++--
|
||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/dav_fuse.c b/src/dav_fuse.c
|
||||
index 734bc1f..4501433 100644
|
||||
index 6311428..1b1698d 100644
|
||||
--- a/src/dav_fuse.c
|
||||
+++ b/src/dav_fuse.c
|
||||
@@ -187,7 +187,7 @@ dav_fuse_loop(int device, char *mpoint, size_t bufsize, time_t idle_time,
|
||||
unmounting = 1;
|
||||
@@ -189,7 +189,7 @@ dav_fuse_loop(int device, char *mpoint, size_t bufsize, time_t idle_time,
|
||||
pid_t pid = fork();
|
||||
if (pid == 0) {
|
||||
#if defined(__linux__)
|
||||
- execl("/bin/umount", "umount", "-il", mountpoint, NULL);
|
||||
+ execl("@wrapperDir@/umount", "umount", "-il", mountpoint, NULL);
|
||||
_exit(EXIT_FAILURE);
|
||||
}
|
||||
}
|
||||
#elif defined(__FreeBSD__)
|
||||
execl("/sbin/umount", "umount", "-v", mountpoint, NULL);
|
||||
#endif
|
||||
diff --git a/src/umount_davfs.c b/src/umount_davfs.c
|
||||
index b7019c3..75e3b4b 100644
|
||||
index 6a82fd2..93958be 100644
|
||||
--- a/src/umount_davfs.c
|
||||
+++ b/src/umount_davfs.c
|
||||
@@ -122,9 +122,9 @@ main(int argc, char *argv[])
|
||||
|
||||
char *umount_command = NULL;
|
||||
if (mpoint) {
|
||||
- umount_command = ne_concat("umount -i '", mpoint, "'", NULL);
|
||||
+ umount_command = ne_concat("@wrapperDir@/umount -i '", mpoint, "'", NULL);
|
||||
} else {
|
||||
- umount_command = ne_concat("umount -i '", argv[optind], "'", NULL);
|
||||
+ umount_command = ne_concat("@wrapperDir@/umount -i '", argv[optind], "'", NULL);
|
||||
error(0, 0,
|
||||
_("\n"
|
||||
" can't evaluate PID file name;\n"
|
||||
--
|
||||
2.28.0
|
||||
@@ -50,7 +50,7 @@
|
||||
#endif
|
||||
|
||||
#if defined(__linux__)
|
||||
-#define UMOUNT_CMD "umount -i"
|
||||
+#define UMOUNT_CMD "@wrapperDir@/umount -i"
|
||||
#elif defined(__FreeBSD__)
|
||||
#define UMOUNT_CMD "umount"
|
||||
#endif
|
||||
|
@ -1,6 +1,7 @@
|
||||
{ lib, stdenv
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, autoreconfHook
|
||||
, neon
|
||||
, procps
|
||||
, substituteAll
|
||||
@ -10,17 +11,22 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "davfs2";
|
||||
version = "1.6.1";
|
||||
version = "1.7.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://savannah/davfs2/davfs2-${version}.tar.gz";
|
||||
sha256 = "sha256-zj65SOzlgqUck0zLDMcOZZg5FycXyv8XP2ml4q+QxcA=";
|
||||
sha256 = "sha256-JR23Wic4DMoTMLG5cXAMXl3MDJDlpHYiKF8BQO3+Oi8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
];
|
||||
|
||||
buildInputs = [ neon zlib ];
|
||||
|
||||
patches = [
|
||||
./fix-sysconfdir.patch
|
||||
./disable-suid.patch
|
||||
(substituteAll {
|
||||
src = ./0001-umount_davfs-substitute-ps-command.patch;
|
||||
ps = "${procps}/bin/ps";
|
||||
@ -33,11 +39,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
configureFlags = [ "--sysconfdir=/etc" ];
|
||||
|
||||
makeFlags = [
|
||||
"sbindir=$(out)/sbin"
|
||||
"ssbindir=$(out)/sbin"
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = "https://savannah.nongnu.org/projects/davfs2";
|
||||
description = "Mount WebDAV shares like a typical filesystem";
|
||||
@ -52,5 +53,6 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [ fgaz ];
|
||||
};
|
||||
}
|
||||
|
9
pkgs/tools/filesystems/davfs2/disable-suid.patch
Normal file
9
pkgs/tools/filesystems/davfs2/disable-suid.patch
Normal file
@ -0,0 +1,9 @@
|
||||
diff --git a/src/Makefile.am b/src/Makefile.am
|
||||
index bbde353..bcbed04 100644
|
||||
--- a/src/Makefile.am
|
||||
+++ b/src/Makefile.am
|
||||
@@ -54,4 +54,3 @@ LIBS += @LIBICONV@
|
||||
endif
|
||||
|
||||
install-exec-hook:
|
||||
- chmod u+s $(DESTDIR)$(sbindir)/mount.davfs;
|
@ -1,19 +1,20 @@
|
||||
diff -ubr davfs2-1.4.7-orig/etc/Makefile.am davfs2-1.4.7/etc/Makefile.am
|
||||
--- davfs2-1.4.7-orig/etc/Makefile.am 2013-02-21 11:45:00.185763558 +0100
|
||||
+++ davfs2-1.4.7/etc/Makefile.am 2013-02-21 11:53:05.423197775 +0100
|
||||
@@ -24,17 +24,17 @@
|
||||
diff --git a/etc/Makefile.am b/etc/Makefile.am
|
||||
index 5a01282..6a40921 100644
|
||||
--- a/etc/Makefile.am
|
||||
+++ b/etc/Makefile.am
|
||||
@@ -24,17 +24,17 @@ pkgsysconfdir = $(sysconfdir)/@PACKAGE@
|
||||
|
||||
install-data-local: $(dist_pkgdata_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
- $(mkinstalldirs) $(DESTDIR)$(pkgsysconfdir)
|
||||
- $(INSTALL_DATA) -b davfs2.conf $(DESTDIR)$(pkgsysconfdir)/davfs2.conf
|
||||
- $(INSTALL_DATA) -b -m 600 secrets $(DESTDIR)$(pkgsysconfdir)/secrets
|
||||
- $(INSTALL_DATA) -b $(srcdir)/davfs2.conf $(DESTDIR)$(pkgsysconfdir)/davfs2.conf
|
||||
- $(INSTALL_DATA) -b -m 600 $(srcdir)/secrets $(DESTDIR)$(pkgsysconfdir)/secrets
|
||||
- $(mkinstalldirs) $(DESTDIR)$(pkgsysconfdir)/certs
|
||||
- $(mkinstalldirs) $(DESTDIR)$(pkgsysconfdir)/certs/private
|
||||
- chmod 700 $(DESTDIR)$(pkgsysconfdir)/certs/private
|
||||
+ $(mkinstalldirs) $(out)$(pkgsysconfdir)
|
||||
+ $(INSTALL_DATA) -b davfs2.conf $(out)$(pkgsysconfdir)/davfs2.conf
|
||||
+ $(INSTALL_DATA) -b -m 600 secrets $(out)$(pkgsysconfdir)/secrets
|
||||
+ $(INSTALL_DATA) -b $(srcdir)/davfs2.conf $(out)$(pkgsysconfdir)/davfs2.conf
|
||||
+ $(INSTALL_DATA) -b -m 600 $(srcdir)/secrets $(out)$(pkgsysconfdir)/secrets
|
||||
+ $(mkinstalldirs) $(out)$(pkgsysconfdir)/certs
|
||||
+ $(mkinstalldirs) $(out)$(pkgsysconfdir)/certs/private
|
||||
+ chmod 700 $(out)$(pkgsysconfdir)/certs/private
|
||||
@ -27,34 +28,3 @@ diff -ubr davfs2-1.4.7-orig/etc/Makefile.am davfs2-1.4.7/etc/Makefile.am
|
||||
+ echo " rm -f $(out)$(pkgsysconfdir)/$$f"; \
|
||||
+ rm -f $(out)$(pkgsysconfdir)/$$f; \
|
||||
done
|
||||
diff -ubr davfs2-1.4.7-orig/etc/Makefile.in davfs2-1.4.7/etc/Makefile.in
|
||||
--- davfs2-1.4.7-orig/etc/Makefile.in 2013-02-21 11:45:00.185763558 +0100
|
||||
+++ davfs2-1.4.7/etc/Makefile.in 2013-02-21 11:53:27.241207128 +0100
|
||||
@@ -408,19 +408,19 @@
|
||||
|
||||
install-data-local: $(dist_pkgdata_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
- $(mkinstalldirs) $(DESTDIR)$(pkgsysconfdir)
|
||||
- $(INSTALL_DATA) -b davfs2.conf $(DESTDIR)$(pkgsysconfdir)/davfs2.conf
|
||||
- $(INSTALL_DATA) -b -m 600 secrets $(DESTDIR)$(pkgsysconfdir)/secrets
|
||||
- $(mkinstalldirs) $(DESTDIR)$(pkgsysconfdir)/certs
|
||||
- $(mkinstalldirs) $(DESTDIR)$(pkgsysconfdir)/certs/private
|
||||
- chmod 700 $(DESTDIR)$(pkgsysconfdir)/certs/private
|
||||
+ $(mkinstalldirs) $(out)$(pkgsysconfdir)
|
||||
+ $(INSTALL_DATA) -b davfs2.conf $(out)$(pkgsysconfdir)/davfs2.conf
|
||||
+ $(INSTALL_DATA) -b -m 600 secrets $(out)$(pkgsysconfdir)/secrets
|
||||
+ $(mkinstalldirs) $(out)$(pkgsysconfdir)/certs
|
||||
+ $(mkinstalldirs) $(out)$(pkgsysconfdir)/certs/private
|
||||
+ chmod 700 $(out)$(pkgsysconfdir)/certs/private
|
||||
|
||||
uninstall-local:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(dist_pkgdata_DATA)'; for p in $$list; do \
|
||||
f="`echo $$p | sed -e 's|^.*/||'`"; \
|
||||
- echo " rm -f $(DESTDIR)$(pkgsysconfdir)/$$f"; \
|
||||
- rm -f $(DESTDIR)$(pkgsysconfdir)/$$f; \
|
||||
+ echo " rm -f $(out)$(pkgsysconfdir)/$$f"; \
|
||||
+ rm -f $(out)$(pkgsysconfdir)/$$f; \
|
||||
done
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
|
@ -6,16 +6,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "chezmoi";
|
||||
version = "2.29.3";
|
||||
version = "2.29.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "twpayne";
|
||||
repo = "chezmoi";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-WrGbCyAjrwZHBMXxqrw7vC5J8b7xn7FUeoZ9IANRf0g=";
|
||||
hash = "sha256-pvSKLWek/nCVjlfvYQIefvTt+VMmNYs58/4bPQQdfNU=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-0heLEQFKxKxeNZGBd3GcTsOfhmDyxZRynVrAkF6vHvk=";
|
||||
vendorHash = "sha256-hGYcfERYxSEg+j9EDDGYVar69HoApSqxWH8IWwHaOKs=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
@ -29,6 +29,6 @@ python3Packages.buildPythonApplication rec {
|
||||
homepage = "https://github.com/rumpelsepp/oscclip";
|
||||
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = [ maintainers.traxys ];
|
||||
maintainers = with maintainers; [ rumpelsepp traxys ];
|
||||
};
|
||||
}
|
||||
|
@ -7,16 +7,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "tbls";
|
||||
version = "1.58.0";
|
||||
version = "1.60.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "k1LoW";
|
||||
repo = "tbls";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-uHTE4x8cCM2O4dtqqV7zm7Eqi8xsqqxSUbcFvV2Vgv8=";
|
||||
hash = "sha256-5/YAJl01ARralsBEV6ZJqcYfMMudCmcQcdQD1jn1I+M=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-qMkAmtt9ERYcZEdxqFAI9P99niP3l13iQ6M4cDCz5Kw=";
|
||||
vendorHash = "sha256-AeaTAjo1wRl7Ymg/fyoijaa9UXf9SiNR447WJtZeN5o=";
|
||||
|
||||
CGO_CFLAGS = [ "-Wno-format-security" ];
|
||||
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "clash";
|
||||
version = "1.12.0";
|
||||
version = "1.13.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Dreamacro";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-SE+nZIatvwyc6JubMb7YUlNiJv+LYtJjFMlKEoJzEn8=";
|
||||
hash = "sha256-f/iSnSaRr1dqMRKb7GDZdc2WuykO42XMSNKwMOwuagc=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-ikcGZ1Gfxb4zBkav8MDi3+xNbvhqHIk6NhLfI2ne3ns=";
|
||||
vendorHash = "sha256-fDn6UlijI2TJPF4FS50u1MMDxnd8eDTbqHLnGso/FoU=";
|
||||
|
||||
# Do not build testing suit
|
||||
excludedPackages = [ "./test" ];
|
||||
|
@ -5,6 +5,7 @@
|
||||
, readline
|
||||
, stdenv
|
||||
, which
|
||||
, buildPackages
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -30,6 +31,10 @@ stdenv.mkDerivation rec {
|
||||
nativeCheckInputs = [ which nettools ];
|
||||
doCheck = false; # fails a bunch, hangs
|
||||
|
||||
passthru.tests = lib.optionalAttrs stdenv.buildPlatform.isLinux {
|
||||
musl = buildPackages.pkgsMusl.socat;
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Utility for bidirectional data transfer between two independent data channels";
|
||||
homepage = "http://www.dest-unreach.org/socat/";
|
||||
|
@ -10,13 +10,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "wlr-randr";
|
||||
version = "0.2.0";
|
||||
version = "0.3.0";
|
||||
|
||||
src = fetchFromSourcehut {
|
||||
owner = "~emersion";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-JeSxFXSFxcTwJz9EaLb18wtD4ZIT+ATeYM5OyDTJhDQ=";
|
||||
sha256 = "sha256-iJSHCQbom+V0TrtEYrjMrMkdc6PoZrjhtcgebZYjQjI=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
@ -23508,6 +23508,8 @@ with pkgs;
|
||||
|
||||
vkdt = callPackage ../applications/graphics/vkdt { };
|
||||
|
||||
vkdt-wayland = callPackage ../applications/graphics/vkdt { glfw = glfw-wayland; };
|
||||
|
||||
vlock = callPackage ../misc/screensavers/vlock { };
|
||||
|
||||
virtualpg = callPackage ../development/libraries/virtualpg { };
|
||||
|
@ -12911,12 +12911,12 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
libapreq2 = buildPerlPackage {
|
||||
libapreq2 = buildPerlPackage rec {
|
||||
pname = "libapreq2";
|
||||
version = "2.16";
|
||||
version = "2.17";
|
||||
src = fetchurl {
|
||||
url = "mirror://cpan/authors/id/S/SH/SHAY/libapreq2-2.16.tar.gz";
|
||||
hash = "sha256-4EyFWj6gcLiGNWn7rgL+go9TSsiHVbI+JNOGPMlZg0k=";
|
||||
url = "mirror://apache/httpd/libapreq/${pname}-${version}.tar.gz";
|
||||
hash = "sha256-BGSH8ITBL6HIIq/8X33lbv7ZtIkFpCbmMaa5ScEU2Gw=";
|
||||
};
|
||||
outputs = [ "out" ];
|
||||
buildInputs = [ pkgs.apacheHttpd pkgs.apr pkgs.aprutil ApacheTest ExtUtilsXSBuilder ];
|
||||
|
@ -11906,6 +11906,8 @@ self: super: with self; {
|
||||
|
||||
uptime = callPackage ../development/python-modules/uptime { };
|
||||
|
||||
uptime-kuma-api = callPackage ../development/python-modules/uptime-kuma-api { };
|
||||
|
||||
uptime-kuma-monitor = callPackage ../development/python-modules/uptime-kuma-monitor { };
|
||||
|
||||
uranium = callPackage ../development/python-modules/uranium { };
|
||||
|
Loading…
Reference in New Issue
Block a user