Partially working build
This commit is contained in:
159
flake.nix
Normal file
159
flake.nix
Normal file
@@ -0,0 +1,159 @@
|
||||
{
|
||||
inputs = {
|
||||
nixpkgs.url = "nixpkgs/nixos-23.05";
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
linuxcnc-src = {
|
||||
#url = "github:LinuxCNC/linuxcnc?ref=v2.8.4"; #requires python2
|
||||
url = "github:LinuxCNC/linuxcnc";
|
||||
flake = false;
|
||||
};
|
||||
|
||||
yapps-src = {
|
||||
url = "github:smurfix/yapps";
|
||||
flake = false;
|
||||
};
|
||||
pangocffi-src = {
|
||||
url = "github:leifgehrmann/pangocffi";
|
||||
flake = false;
|
||||
};
|
||||
};
|
||||
outputs = { self, nixpkgs, flake-utils, linuxcnc-src, mach-nix, yapps-src, pangocffi-src, ... }:
|
||||
flake-utils.lib.eachSystem [
|
||||
"x86_64-linux" "i686-linux" "aarch64-linux"
|
||||
] (system:
|
||||
let
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
yapps = pkgs.python3Packages.buildPythonApplication {
|
||||
pname = "yapps";
|
||||
version = "1.0";
|
||||
#propagatedBuildInputs = [ flask ];
|
||||
src = yapps-src;
|
||||
};
|
||||
pangocffi = pkgs.python3Packages.buildPythonApplication {
|
||||
pname = "pangocffi";
|
||||
version = "1.0";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkgs.pkg-config
|
||||
pkgs.libffi
|
||||
pkgs.pango.dev
|
||||
pkgs.glib
|
||||
pkgs.python3Packages.setuptools
|
||||
];
|
||||
propagatedBuildInputs = with pkgs.python3Packages; [
|
||||
cffi
|
||||
pytest
|
||||
setuptools
|
||||
|
||||
flake8
|
||||
pytest
|
||||
coverage
|
||||
sphinx
|
||||
sphinx_rtd_theme
|
||||
tox
|
||||
twine
|
||||
];
|
||||
src = pangocffi-src;
|
||||
|
||||
setuptoolsCheckPhase = ''
|
||||
echo "SKIPPING setuptoolsCheckPhase"
|
||||
'';
|
||||
};
|
||||
#boostPython = pkgs.boost174.override { python = pkgs.python3; enablePython = true; };
|
||||
boostPython = pkgs.boost174.override { enablePython = true; };
|
||||
linuxcnc = pkgs.stdenv.mkDerivation {
|
||||
|
||||
# https://linuxcnc.org/docs/devel/html/code/building-linuxcnc.html
|
||||
name = "linuxcnc";
|
||||
|
||||
src = linuxcnc-src;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
#preConfigure = ''
|
||||
# cd src
|
||||
# #./autogen.sh
|
||||
#'';
|
||||
preAutoreconf = ''
|
||||
cd src
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
"--with-realtime=uspace"
|
||||
"--enable-non-distributable=yes"
|
||||
"--with-tclConfig=${pkgs.tcl}/lib/tclConfig.sh"
|
||||
"--with-tkConfig=${pkgs.tk}/lib/tkConfig.sh"
|
||||
#"--with-boost-python=${boostPython.dev}/include/boost/"
|
||||
#"PYTHON_LDFLAGS=-L${pkgs.python39Packages.python}/lib"
|
||||
];
|
||||
|
||||
nativeBuildInputs = with pkgs; [
|
||||
autoreconfHook
|
||||
pkg-config
|
||||
#wrapGAppsHook
|
||||
gobject-introspection
|
||||
];
|
||||
#nativeBuildInputs = [ pkgs.pkg-config ];
|
||||
buildInputs = with pkgs; [
|
||||
libtirpc
|
||||
udev
|
||||
libmodbus
|
||||
libusb
|
||||
glib
|
||||
gtk3.dev
|
||||
gtk2.dev
|
||||
psmisc
|
||||
|
||||
yapps
|
||||
|
||||
intltool
|
||||
|
||||
boostPython
|
||||
boostPython.dev
|
||||
#python3Packages.boost
|
||||
#python3Packages.boost.dev
|
||||
#python3Packages.eigenpy
|
||||
#pkgs.python39Packages.python
|
||||
|
||||
tcl
|
||||
tclx
|
||||
tk.dev
|
||||
tkimg
|
||||
bwidget
|
||||
|
||||
python3Packages.pygobject3
|
||||
|
||||
readline.dev
|
||||
|
||||
python3Packages.tkinter
|
||||
|
||||
libGLU
|
||||
|
||||
xorg.libXmu.dev
|
||||
ps
|
||||
sysvtools
|
||||
util-linux
|
||||
|
||||
#tclreadline
|
||||
#pkgs.python3Packages.pygobject3.dev
|
||||
#pkgs.python3Packages.gst-python
|
||||
#pangocffi
|
||||
#pkgs.pango.dev
|
||||
|
||||
#pkgs.python3Packages.pyxdg
|
||||
#pkgs.python3Packages.xcffib
|
||||
#pkgs.python3Packages.cairocffi
|
||||
#pkgs.python3Packages.manimpango
|
||||
|
||||
];
|
||||
|
||||
};
|
||||
|
||||
in
|
||||
{
|
||||
#packages.default = pkgs.tk;
|
||||
packages.default = linuxcnc;
|
||||
packages.linuxcnc = linuxcnc;
|
||||
}
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user