!SgYlXivkogarTVcnZO:nixos.org

Nix Flakes

787 Members
153 Servers

Load older messages


SenderMessageTime
1 May 2025
@rosariopulella:matrix.orgRosuavio changed their display name from Rosario Pulella to Rosuavio.20:08:43
2 May 2025
@dramforever:matrix.orgdramforeverhttps://github.com/NixOS/nixpkgs/blob/master/nixos/modules/misc/nixpkgs/read-only.nix02:36:01
@leons_pferd:matrix.orgLeonThank you for the help!! :) 11:46:04
3 May 2025
@seerlite:matrix.orgSeerLite joined the room.14:28:33
@er10:matrix.org@er10:matrix.org

Hello everyone : I receive the following notification, since today :

doas (omakuva@3nnoia) password: 
omakuva@3nnoia:/etc/nixos$ doas nixos-rebuild switch --flake /etc/nixos#my-upgrade --verbose
$ nix --extra-experimental-features nix-command flakes build --out-link /tmp/nixos-rebuild.8Li1il/nixos-rebuild /etc/nixos#nixosConfigurations."my-upgrade".config.system.build.nixos-rebuild --verbose
error: flake 'path:/etc/nixos' does not provide attribute 'packages.x86_64-linux.nixosConfigurations."my-upgrade".config.system.build.nixos-rebuild', 'legacyPackages.x86_64-linux.nixosConfigurations."my-upgrade".config.system.build.nixos-rebuild' or 'nixosConfigurations."my-upgrade".config.system.build.nixos-rebuild'`` 

Could you please help ? -- It never happened before... Thanks in advance.
16:06:48
@bastidest:matrix.orgbastidest joined the room.18:43:52
@beatscherrer:matrix.orgstencill joined the room.18:47:22
@beatscherrer:matrix.orgstencill

Hi all,

anyone has a working android dev (tauri in particular) flake? I got a working flake that just stopped working due to android build error (gradlew) with

* What went wrong:
platform encoding not initialized

flake in question is:

{
  description = "A Tauri Angular Android development flake";

  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
    rust-overlay.url = "github:oxalica/rust-overlay";
    android.url = "github:tadfisher/android-nixpkgs";
  };

  outputs =
    {
      self,
      nixpkgs,
      rust-overlay,
      android,
      ...
    }:
    let
      systems = [
        "x86_64-linux"
        "aarch64-linux"
      ];

      forAllSystems =
        function:
        nixpkgs.lib.genAttrs systems (
          system:
          function ({
            pkgs = import nixpkgs {
              inherit system;
              overlays = [
                rust-overlay.overlays.default
                self.overlay
              ];
              config = {
                allowUnfree = true;
                android_sdk.accept_license = true;
              };
            };
            inherit system;
          })
        );
    in
    {
      overlay = final: prev: {
        inherit (self.packages.${final.system}) android-sdk android-studio;
      };

      packages = forAllSystems (
        { pkgs, system }:
        {
          android-sdk = android.sdk.${system} (
            sdkPkgs:
            with sdkPkgs;
            [
              # Useful packages for building and testing.
              build-tools-34-0-0
              cmdline-tools-latest
              emulator
              platform-tools
              platforms-android-34

              # Other useful packages for a development environment.
              ndk-26-1-10909125
              # skiaparser-3
              # sources-android-34
            ]
            ++ pkgs.lib.optionals (system == "aarch64-darwin") [
              system-images-android-34-google-apis-arm64-v8a
              system-images-android-34-google-apis-playstore-arm64-v8a
            ]
            ++ pkgs.lib.optionals (system == "x86_64-darwin" || system == "x86_64-linux") [
              system-images-android-34-google-apis-x86-64
              system-images-android-34-google-apis-playstore-x86-64
            ]
          );
        }
        // pkgs.lib.optionalAttrs (system == "x86_64-linux") {
          # Android Studio in nixpkgs is currently packaged for x86_64-linux only.
          android-studio = pkgs.androidStudioPackages.stable;
        }
      );

      devShells = forAllSystems (
        { pkgs, ... }:
        {
          default =
            with pkgs;
            mkShell rec {
              motd = ''
                Welcome to the Tauri Android App Development environment.
              '';

              nativeBuildInputs = with pkgs; [
                pkg-config
                gobject-introspection
                cargo
                cargo-tauri
                nodejs
              ];

              buildInputs = [
                #-- tauri
                (rust-bin.stable.latest.default.override {
                  targets = [
                    "aarch64-linux-android"
                    "x86_64-linux-android"
                    "armv7-linux-androideabi"
                    "i686-linux-android"
                  ];
                })
                at-spi2-atk
                nodejs
                atkmm
                cairo
                gdk-pixbuf
                harfbuzz
                pnpm
                nodePackages."@angular/cli"
                curl
                wget
                pkg-config
                dbus
                openssl
                glib
                gtk3
                libsoup_2_4
                webkitgtk_4_1
                librsvg
                pango
                # android utilities
                androidenv.androidPkgs.platform-tools # adb
                apksigner
                zulu
                self.packages.${system}.android-studio
                self.packages.${system}.android-sdk

                #-- other tools
                just
                eza
                fd

                # LSPs
                vscode-langservers-extracted
                typescript-language-server
                nodePackages.prettier
                nodePackages.vscode-langservers-extracted
                rust-analyzer
                emmet-ls
              ];

              shellHook = ''
                alias ls=eza
                alias find=fd

                pnpm install
              '';

              LD_LIBRARY_PATH = "${pkgs.lib.makeLibraryPath buildInputs}:$LD_LIBRARY_PATH";
              OPENSSL_INCLUDE_DIR = "${pkgs.openssl.dev}/include/openssl";
              OPENSSL_LIB_DIR = "${pkgs.openssl.out}/lib";
              OPENSSL_ROOT_DIR = "${pkgs.openssl.out}";

              GIO_MODULE_DIR = "${pkgs.glib-networking}/lib/gio/modules/";

              # Android
              ANDROID_HOME = "${pkgs.android-sdk}/share/android-sdk";
              ANDROID_SDK_ROOT = "${pkgs.android-sdk}/share/android-sdk";
              JAVA_HOME = "${pkgs.jdk.home}";
              NDK_HOME = "${pkgs.android-sdk}/share/android-sdk/ndk/26.1.10909125";
              GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=${pkgs.android-sdk}/share/android-sdk/build-tools/34.0.0/aapt2";

              # other?
              XDG_DATA_DIRS = "${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}:${pkgs.gtk3}/share/gsettings-schemas/${pkgs.gtk3.name}:$XDG_DATA_DIRS";
            };
        }
      );
    };
}

18:49:21
@beatscherrer:matrix.orgstencill *

Hi all,

anyone has a working android dev (tauri in particular) flake? I got a working flake that just stopped working due to android build error (gradlew) with

* What went wrong:
platform encoding not initialized

flake in question is:

{
  description = "A Tauri Angular Android development flake";

  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
    rust-overlay.url = "github:oxalica/rust-overlay";
    android.url = "github:tadfisher/android-nixpkgs";
  };

  outputs =
    {
      self,
      nixpkgs,
      rust-overlay,
      android,
      ...
    }:
    let
      systems = [
        "x86_64-linux"
        "aarch64-linux"
      ];

      forAllSystems =
        function:
        nixpkgs.lib.genAttrs systems (
          system:
          function ({
            pkgs = import nixpkgs {
              inherit system;
              overlays = [
                rust-overlay.overlays.default
                self.overlay
              ];
              config = {
                allowUnfree = true;
                android_sdk.accept_license = true;
              };
            };
            inherit system;
          })
        );
    in
    {
      overlay = final: prev: {
        inherit (self.packages.${final.system}) android-sdk android-studio;
      };

      packages = forAllSystems (
        { pkgs, system }:
        {
          android-sdk = android.sdk.${system} (
            sdkPkgs:
            with sdkPkgs;
            [
              # Useful packages for building and testing.
              build-tools-34-0-0
              cmdline-tools-latest
              emulator
              platform-tools
              platforms-android-34

              # Other useful packages for a development environment.
              ndk-26-1-10909125
              # skiaparser-3
              # sources-android-34
            ]
            ++ pkgs.lib.optionals (system == "aarch64-darwin") [
              system-images-android-34-google-apis-arm64-v8a
              system-images-android-34-google-apis-playstore-arm64-v8a
            ]
            ++ pkgs.lib.optionals (system == "x86_64-darwin" || system == "x86_64-linux") [
              system-images-android-34-google-apis-x86-64
              system-images-android-34-google-apis-playstore-x86-64
            ]
          );
        }
        // pkgs.lib.optionalAttrs (system == "x86_64-linux") {
          # Android Studio in nixpkgs is currently packaged for x86_64-linux only.
          android-studio = pkgs.androidStudioPackages.stable;
        }
      );

      devShells = forAllSystems (
        { pkgs, ... }:
        {
          default =
            with pkgs;
            mkShell rec {
              motd = ''
                Welcome to the Tauri Android App Development environment.
              '';

              nativeBuildInputs = with pkgs; [
                pkg-config
                gobject-introspection
                cargo
                cargo-tauri
                nodejs
              ];

              buildInputs = [
                #-- tauri
                (rust-bin.stable.latest.default.override {
                  targets = [
                    "aarch64-linux-android"
                    "x86_64-linux-android"
                    "armv7-linux-androideabi"
                    "i686-linux-android"
                  ];
                })
                at-spi2-atk
                nodejs
                atkmm
                cairo
                gdk-pixbuf
                harfbuzz
                pnpm
                nodePackages."@angular/cli"
                curl
                wget
                pkg-config
                dbus
                openssl
                glib
                gtk3
                libsoup_2_4
                webkitgtk_4_1
                librsvg
                pango
                # android utilities
                androidenv.androidPkgs.platform-tools # adb
                apksigner
                zulu
                self.packages.${system}.android-studio
                self.packages.${system}.android-sdk

                #-- other tools
                just
                eza
                fd

                # LSPs
                vscode-langservers-extracted
                typescript-language-server
                nodePackages.prettier
                nodePackages.vscode-langservers-extracted
                rust-analyzer
                emmet-ls
              ];

              shellHook = ''
                alias ls=eza
                alias find=fd

                pnpm install
              '';

              LD_LIBRARY_PATH = "${pkgs.lib.makeLibraryPath buildInputs}:$LD_LIBRARY_PATH";
              OPENSSL_INCLUDE_DIR = "${pkgs.openssl.dev}/include/openssl";
              OPENSSL_LIB_DIR = "${pkgs.openssl.out}/lib";
              OPENSSL_ROOT_DIR = "${pkgs.openssl.out}";

              GIO_MODULE_DIR = "${pkgs.glib-networking}/lib/gio/modules/";

              # Android
              ANDROID_HOME = "${pkgs.android-sdk}/share/android-sdk";
              ANDROID_SDK_ROOT = "${pkgs.android-sdk}/share/android-sdk";
              JAVA_HOME = "${pkgs.jdk.home}";
              NDK_HOME = "${pkgs.android-sdk}/share/android-sdk/ndk/26.1.10909125";
              GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=${pkgs.android-sdk}/share/android-sdk/build-tools/34.0.0/aapt2";

              # other?
              XDG_DATA_DIRS = "${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}:${pkgs.gtk3}/share/gsettings-schemas/${pkgs.gtk3.name}:$XDG_DATA_DIRS";
            };
        }
      );
    };
}

18:50:23
@beatscherrer:matrix.orgstencill *

Hi all,

anyone has a working android dev (tauri in particular) flake? I got a working flake that just stopped working due to android build error (gradlew) with

* What went wrong:
platform encoding not initialized

flake in question is:

{
  description = "A Tauri Angular Android development flake";

  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
    rust-overlay.url = "github:oxalica/rust-overlay";
    android.url = "github:tadfisher/android-nixpkgs";
  };

  outputs =
    {
      self,
      nixpkgs,
      rust-overlay,
      android,
      ...
    }:
    let
      systems = [
        "x86_64-linux"
        "aarch64-linux"
      ];

      forAllSystems =
        function:
        nixpkgs.lib.genAttrs systems (
          system:
          function ({
            pkgs = import nixpkgs {
              inherit system;
              overlays = [
                rust-overlay.overlays.default
                self.overlay
              ];
              config = {
                allowUnfree = true;
                android_sdk.accept_license = true;
              };
            };
            inherit system;
          })
        );
    in
    {
      overlay = final: prev: {
        inherit (self.packages.${final.system}) android-sdk android-studio;
      };

      packages = forAllSystems (
        { pkgs, system }:
        {
          android-sdk = android.sdk.${system} (
            sdkPkgs:
            with sdkPkgs;
            [
              # Useful packages for building and testing.
              build-tools-34-0-0
              cmdline-tools-latest
              emulator
              platform-tools
              platforms-android-34

              # Other useful packages for a development environment.
              ndk-26-1-10909125
              # skiaparser-3
              # sources-android-34
            ]
            ++ pkgs.lib.optionals (system == "aarch64-darwin") [
              system-images-android-34-google-apis-arm64-v8a
              system-images-android-34-google-apis-playstore-arm64-v8a
            ]
            ++ pkgs.lib.optionals (system == "x86_64-darwin" || system == "x86_64-linux") [
              system-images-android-34-google-apis-x86-64
              system-images-android-34-google-apis-playstore-x86-64
            ]
          );
        }
        // pkgs.lib.optionalAttrs (system == "x86_64-linux") {
          # Android Studio in nixpkgs is currently packaged for x86_64-linux only.
          android-studio = pkgs.androidStudioPackages.stable;
        }
      );

      devShells = forAllSystems (
        { pkgs, ... }:
        {
          default =
            with pkgs;
            mkShell rec {
              motd = ''
                Welcome to the Tauri Android App Development environment.
              '';

              nativeBuildInputs = with pkgs; [
                pkg-config
                gobject-introspection
                cargo
                cargo-tauri
                nodejs
              ];

              buildInputs = [
                #-- tauri
                (rust-bin.stable.latest.default.override {
                  targets = [
                    "aarch64-linux-android"
                    "x86_64-linux-android"
                    "armv7-linux-androideabi"
                    "i686-linux-android"
                  ];
                })
                at-spi2-atk
                nodejs
                atkmm
                cairo
                gdk-pixbuf
                harfbuzz
                pnpm
                nodePackages."@angular/cli"
                curl
                wget
                pkg-config
                dbus
                openssl
                glib
                gtk3
                libsoup_2_4
                webkitgtk_4_1
                librsvg
                pango
                # android utilities
                androidenv.androidPkgs.platform-tools # adb
                apksigner
                zulu
                self.packages.${system}.android-studio
                self.packages.${system}.android-sdk

                #-- other tools
                just
                eza
                fd

                # LSPs
                vscode-langservers-extracted
                typescript-language-server
                nodePackages.prettier
                nodePackages.vscode-langservers-extracted
                rust-analyzer
                emmet-ls
              ];

              shellHook = ''
                alias ls=eza
                alias find=fd

                pnpm install
              '';

              LD_LIBRARY_PATH = "${pkgs.lib.makeLibraryPath buildInputs}:$LD_LIBRARY_PATH";
              OPENSSL_INCLUDE_DIR = "${pkgs.openssl.dev}/include/openssl";
              OPENSSL_LIB_DIR = "${pkgs.openssl.out}/lib";
              OPENSSL_ROOT_DIR = "${pkgs.openssl.out}";

              GIO_MODULE_DIR = "${pkgs.glib-networking}/lib/gio/modules/";

              # Android
              ANDROID_HOME = "${pkgs.android-sdk}/share/android-sdk";
              ANDROID_SDK_ROOT = "${pkgs.android-sdk}/share/android-sdk";
              JAVA_HOME = "${pkgs.jdk.home}";
              NDK_HOME = "${pkgs.android-sdk}/share/android-sdk/ndk/26.1.10909125";
              GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=${pkgs.android-sdk}/share/android-sdk/build-tools/34.0.0/aapt2";

              # other?
              XDG_DATA_DIRS = "${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}:${pkgs.gtk3}/share/gsettings-schemas/${pkgs.gtk3.name}:$XDG_DATA_DIRS";
            };
        }
      );
    };
}

Not really a flake issue I reckon but maybe someone with a working tauri/android flake ran into the same issues. All the proposed fixes on SO with setting the encoding in some way or another did not help unfortunately.

18:51:30
4 May 2025
@gasu:matrix.orggasu joined the room.08:06:33
@blackswan319:matrix.orgBlackswan319 joined the room.16:21:29
5 May 2025
@andtheysay:matrix.organdtheysay joined the room.16:09:20
6 May 2025
@2007corolla:matrix.org2007 Corolla joined the room.02:46:54
7 May 2025
@aerden:matrix.orgAerden joined the room.07:55:56
@mr.defenestrator:matrix.orgMr. Defenestrator joined the room.08:26:24
@mr.defenestrator:matrix.orgMr. Defenestrator Did something change with the flake registry recently? I have custom registry entries that show up in nix registry list but not t when running nix flake show myflake - as far as I can tell this happened after an update, but rollbacks aren't fixing it. Across multiple systems. 08:40:23
@paintenzero:beeper.compaintenzero joined the room.11:28:22
@paintenzero:beeper.compaintenzero left the room.11:32:36
@paintenzero:beeper.compaintenzero joined the room.12:08:45
@paintenzero:beeper.compaintenzeroI see many recommendations to put NixOS system configuration into a flake. Can somebody explain what is the profit doing it?12:14:59
@dramforever:matrix.orgdramforevereasy management of evaluation inputs, like nixpkgs, home-manager, other people's overlays and nixos modules, etc12:20:33
@dramforever:matrix.orgdramforever you don't have to use flakes, see e.g. https://github.com/andir/npins 12:20:51
@dramforever:matrix.orgdramforeverif you have your own package set you can also easily use it from the cli12:21:19
@dramforever:matrix.orgdramforeveri don't know if you're going that far yet12:21:25
@paintenzero:beeper.compaintenzeroAh, I see now. That makes sense. Thank you!12:22:23
@sandro:supersandro.deSandro 🐧yep. registry is no longer used for that because it depends on user configuration12:36:57
@sandro:supersandro.deSandro 🐧managing channels is no fun when you have more than 2 and especially painful when you have 10+12:37:23
@sandro:supersandro.deSandro 🐧Flakes are the defacto standard. You can use something else but that is usually gefrickel and may not be supported by everything.12:37:47
@paintenzero:beeper.compaintenzeroAnd by managing channels you mean managing compatibility between all the software from different channels?12:47:36

Show newer messages


Back to Room ListRoom Version: 6