add binsync

This commit is contained in:
xenia 2025-09-12 00:46:37 -04:00
parent cedb775069
commit 9ba5dff3bc
4 changed files with 147 additions and 0 deletions

View File

@ -524,6 +524,10 @@ feedvalidator --base "https://my-base-url/atom.xml" path/to/atom.xml
a python utility to access serial ports from the command line
### [`python311Packages.binsync` and `python311Packages.libbs`](./pkgs/reverse-engineering/binsync)
packaged latest versions of binsync and libbs from git
### [`outer-wilds-text-adventure`](./pkgs/games/outer-wilds-text-adventure)
nix packaging for the Outer Wilds text adventure game. it should work by default on NixOS. if using

View File

@ -37,6 +37,11 @@ final: prev: {
feedvalidator = final.python312Packages.feedvalidator;
megacom = final.python312Packages.megacom;
python311Packages = prev.python311Packages.overrideScope (pfinal: pprev: {
libbs = pfinal.callPackage ./pkgs/reverse-engineering/binsync/libbs.nix {};
binsync = pfinal.callPackage ./pkgs/reverse-engineering/binsync/binsync.nix {};
});
outer-wilds-text-adventure = prev.callPackage ./pkgs/games/outer-wilds-text-adventure {};
satisfactory-dedicated-server = prev.callPackage ./pkgs/games/satisfactory-dedicated-server {};

View File

@ -0,0 +1,68 @@
{
lib,
fetchFromGitHub,
buildPythonPackage,
setuptools,
libbs,
filelock,
gitpython,
prompt-toolkit,
pycparser,
sortedcontainers,
toml,
tqdm,
ply,
wordfreq,
pyside6,
pytestCheckHook,
pytest-qt,
}: buildPythonPackage rec {
pname = "binsync";
version = "5.7.10+dev";
pyproject = true;
src = fetchFromGitHub {
owner = "binsync";
repo = "binsync";
rev = "e67da5ab9cddc2743f7462c9543ba7100e25eeb5";
hash = "sha256-QDOfbo2yjfjLsLILMhl/ckKwXDusXfE8+YmFpW5djN0=";
};
build-system = [ setuptools ];
dependencies = [
libbs
filelock
gitpython
prompt-toolkit
pycparser
sortedcontainers
toml
tqdm
ply
wordfreq
];
optional-dependencies = {
ghidra = [ pyside6 ];
};
nativeCheckInputs = [
pytestCheckHook
pytest-qt
pyside6
];
disabledTestPaths = [
# Test tries to import angrmanagement
"tests/test_angr_gui.py"
];
pythonImportsCheck = [ "binsync" ];
}

View File

@ -0,0 +1,70 @@
{
lib,
fetchFromGitHub,
buildPythonPackage,
setuptools,
filelock,
ghidra-bridge,
jfx-bridge,
networkx,
platformdirs,
prompt-toolkit,
psutil,
pycparser,
pyhidra,
toml,
tqdm,
ply,
pytestCheckHook,
writableTmpDirAsHomeHook,
}: buildPythonPackage rec {
pname = "libbs";
version = "2.16.4+dev";
pyproject = true;
src = fetchFromGitHub {
owner = "binsync";
repo = "libbs";
rev = "0ce5c351cc81c1a0120f763aeba584fdb9dc2820";
hash = "sha256-if27Tg5S0Esrw9xHi6nr+kDIw4OTz7yZ2256/4Kbkeo=";
};
build-system = [ setuptools ];
dependencies = [
filelock
ghidra-bridge
jfx-bridge
networkx
platformdirs
prompt-toolkit
psutil
pycparser
pyhidra
toml
tqdm
ply
];
nativeCheckInputs = [
pytestCheckHook
writableTmpDirAsHomeHook
];
pythonImportsCheck = [ "libbs" ];
disabledTests = [
"test_change_watcher_plugin_cli"
"test_ghidra_artifact_watchers"
"TestHeadlessInterfaces"
];
disabledTestPaths = [
"tests/test_decompilers.py"
"tests/test_remote_ghidra.py"
];
}