Add flake and some utils
This commit is contained in:
commit
f99b7ba23d
|
@ -0,0 +1 @@
|
||||||
|
.direnv
|
|
@ -0,0 +1 @@
|
||||||
|
This is discosip, PRJ16, an attempt to enable use of discord from a SIP phone.
|
|
@ -0,0 +1,92 @@
|
||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"devshell": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nixpkgs": "nixpkgs"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1655976588,
|
||||||
|
"narHash": "sha256-VreHyH6ITkf/1EX/8h15UqhddJnUleb0HgbC3gMkAEQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "devshell",
|
||||||
|
"rev": "899ca4629020592a13a46783587f6e674179d1db",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "devshell",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1642700792,
|
||||||
|
"narHash": "sha256-XqHrk7hFb+zBvRg6Ghl+AZDq03ov6OshJLiSWOoX5es=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "846b2ae0fc4cc943637d3d1def4454213e203cba",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1643381941,
|
||||||
|
"narHash": "sha256-pHTwvnN4tTsEKkWlXQ8JMY423epos8wUOhthpwJjtpc=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "5efc8ca954272c4376ac929f4c5ffefcc20551d5",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1656490020,
|
||||||
|
"narHash": "sha256-xonV1ITvAtwtoM58Iaz77mrkkj3NQKvP2QOPYZNiNvs=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "23488b5815ef60b3084a874f71fdae2dff52e1f7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"devshell": "devshell",
|
||||||
|
"nixpkgs": "nixpkgs_2",
|
||||||
|
"utils": "utils"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"utils": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1656065134,
|
||||||
|
"narHash": "sha256-oc6E6ByIw3oJaIyc67maaFcnjYOz1mMcOtHxbEf9NwQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "bee6a7250dd1b01844a2de7e02e4df7d8a0a206c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
|
@ -0,0 +1,28 @@
|
||||||
|
{
|
||||||
|
description = "A basic flake from samw";
|
||||||
|
inputs = {
|
||||||
|
utils.url = "github:numtide/flake-utils";
|
||||||
|
devshell.url = "github:numtide/devshell";
|
||||||
|
};
|
||||||
|
outputs = {
|
||||||
|
self,
|
||||||
|
nixpkgs,
|
||||||
|
utils,
|
||||||
|
devshell,
|
||||||
|
}:
|
||||||
|
utils.lib.eachDefaultSystem (system: let
|
||||||
|
pkgs = import nixpkgs {
|
||||||
|
inherit system;
|
||||||
|
|
||||||
|
overlays = [devshell.overlay];
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
devShells.default = pkgs.devshell.mkShell {
|
||||||
|
packages = with pkgs; [
|
||||||
|
ffmpeg
|
||||||
|
(callPackage ./pjsip {inherit (darwin.apple_sdk.frameworks) AppKit;})
|
||||||
|
];
|
||||||
|
};
|
||||||
|
formatter = pkgs.alejandra;
|
||||||
|
});
|
||||||
|
}
|
|
@ -0,0 +1,53 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchFromGitHub,
|
||||||
|
openssl,
|
||||||
|
libsamplerate,
|
||||||
|
alsa-lib,
|
||||||
|
AppKit,
|
||||||
|
fetchpatch,
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "pjsip";
|
||||||
|
version = "2.12.1";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = pname;
|
||||||
|
repo = "pjproject";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "sha256-HIDL4xzzTu3irzrIOf8qSNCAvHGOMpi8EDeqZb8mMnc=";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
./fix-aarch64.patch
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs =
|
||||||
|
[openssl libsamplerate]
|
||||||
|
++ lib.optional stdenv.isLinux alsa-lib
|
||||||
|
++ lib.optional stdenv.isDarwin AppKit;
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
export LD=$CC
|
||||||
|
'';
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
cp pjsip-apps/bin/pjsua-* $out/bin/pjsua
|
||||||
|
mkdir -p $out/share/${pname}-${version}/samples
|
||||||
|
cp pjsip-apps/bin/samples/*/* $out/share/${pname}-${version}/samples
|
||||||
|
'';
|
||||||
|
|
||||||
|
# We need the libgcc_s.so.1 loadable (for pthread_cancel to work)
|
||||||
|
dontPatchELF = true;
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "A multimedia communication library written in C, implementing standard based protocols such as SIP, SDP, RTP, STUN, TURN, and ICE";
|
||||||
|
homepage = "https://pjsip.org/";
|
||||||
|
license = licenses.gpl2Plus;
|
||||||
|
maintainers = with maintainers; [olynch];
|
||||||
|
mainProgram = "pjsua";
|
||||||
|
platforms = platforms.linux ++ platforms.darwin;
|
||||||
|
};
|
||||||
|
}
|
|
@ -0,0 +1,13 @@
|
||||||
|
--- a/aconfigure
|
||||||
|
+++ b/aconfigure
|
||||||
|
@@ -9174,6 +9174,10 @@
|
||||||
|
ac_webrtc_instset=neon
|
||||||
|
ac_webrtc_cflags="-DWEBRTC_ARCH_ARM64"
|
||||||
|
;;
|
||||||
|
+ arm64*|aarch64*)
|
||||||
|
+ ac_webrtc_instset=neon
|
||||||
|
+ ac_webrtc_cflags="-DWEBRTC_ARCH_ARM64"
|
||||||
|
+ ;;
|
||||||
|
*)
|
||||||
|
ac_webrtc_instset=sse2
|
||||||
|
;;
|
Loading…
Reference in New Issue