mirror of
https://codeberg.org/icewind/palantir.git
synced 2026-06-03 18:24:08 +02:00
nix windows build
This commit is contained in:
parent
bfb8f20439
commit
23e6e2fff5
5 changed files with 41 additions and 24 deletions
|
|
@ -4,12 +4,12 @@ System metrics exporter for prometheus
|
|||
|
||||
## Exported metrics
|
||||
|
||||
- cpu, memory, io, network and disk usage stats
|
||||
- cpu, memory, gpu memory, io, network and disk usage stats
|
||||
- zfs pool usage and arc stats
|
||||
- cpu and gpu temperature (gpu temps only for amd cards)
|
||||
- cpu power usage on modern amd and intel platforms
|
||||
- cpu and gpu temperature
|
||||
- cpu and gpu power usage on modern amd and intel platforms
|
||||
- docker per-container cpu, memory and network stats
|
||||
-
|
||||
|
||||
## Usage
|
||||
|
||||
- Download the binary for your architecture from the [releases](https://github.com/icewind1991/palantir/releases/) and place it at `/usr/local/bin/palantir`
|
||||
|
|
|
|||
14
flake.lock
generated
14
flake.lock
generated
|
|
@ -38,10 +38,10 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1682669017,
|
||||
"narHash": "sha256-Vi+p4y3wnl0/4gcwTdmCO398kKlDaUrNROtf3GOD2NY=",
|
||||
"path": "/nix/store/wm2cdd01f8jqbxpw817nv5j3sw6p93g8-source",
|
||||
"rev": "7449971a3ecf857b4a554cf79b1d9dcc1a4647d8",
|
||||
"lastModified": 1683928319,
|
||||
"narHash": "sha256-maz0DRKixJVcNRMiAMWlJniiF8IuQ+WbfmlJJ8D+jfM=",
|
||||
"path": "/nix/store/pp35kzqx97fkkl7az1fb9ygphr6qi9h0-source",
|
||||
"rev": "9656e85a15a0fe67847ee8cdb99a20d8df499962",
|
||||
"type": "path"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -80,11 +80,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1684290028,
|
||||
"narHash": "sha256-IWWfoF5aU8wzxJ6ixuW+3KRlppYvmhUP5v6owWiXJMQ=",
|
||||
"lastModified": 1684376381,
|
||||
"narHash": "sha256-XVFTXADfvBXKwo4boqfg80awUbT+JgQvlQ8uZ+Xgo1s=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "ded1f327ff2bdf0eb4bbb945865441ac636c423e",
|
||||
"rev": "7c9a265c2eaa5783bc18593b1aec39a85653c076",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
|||
39
flake.nix
39
flake.nix
|
|
@ -26,22 +26,43 @@
|
|||
};
|
||||
inherit system overlays;
|
||||
};
|
||||
mingw_w64_cc = pkgs-cross-mingw.stdenv.cc;
|
||||
mingw_w64 = pkgs-cross-mingw.windows.mingw_w64;
|
||||
windows = pkgs-cross-mingw.windows;
|
||||
|
||||
naersk-lib = naersk.lib."${system}";
|
||||
toolchain = (pkgs.rust-bin.stable.latest.default.override {
|
||||
targets = [ "x86_64-pc-windows-gnu" ];
|
||||
});
|
||||
|
||||
mingw_w64_cc = pkgs.pkgsCross.mingwW64.stdenv.cc;
|
||||
windows = pkgs.pkgsCross.mingwW64.windows;
|
||||
|
||||
naersk' = pkgs.callPackage naersk {
|
||||
cargo = toolchain;
|
||||
rustc = toolchain;
|
||||
};
|
||||
in rec {
|
||||
# `nix build`
|
||||
packages.palantir = naersk-lib.buildPackage {
|
||||
packages.palantir = naersk'.buildPackage {
|
||||
pname = "palantir";
|
||||
root = ./.;
|
||||
src = ./.;
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/lib/udev/rules.d/
|
||||
echo 'SUBSYSTEM=="powercap", ACTION=="add", RUN+="${pkgs.coreutils-full}/bin/chgrp -R powermonitoring /sys%p", RUN+="${pkgs.coreutils-full}/bin/chmod -R g=u /sys%p"' >> $out/lib/udev/rules.d/51-palantir.rules
|
||||
echo 'SUBSYSTEM=="powercap", ACTION=="change", ENV{TRIGGER}!="none", RUN+="${pkgs.coreutils-full}/bin/chgrp -R powermonitoring /sys%p", RUN+="${pkgs.coreutils-full}/bin/chmod -R g=u /sys%p"' >> $out/lib/udev/rules.d/51-palantir.rules
|
||||
'';
|
||||
};
|
||||
packages.palantir-win = naersk'.buildPackage {
|
||||
pname = "palantir";
|
||||
src = ./.;
|
||||
|
||||
strictDeps = true;
|
||||
depsBuildBuild = with pkgs; [
|
||||
mingw_w64_cc
|
||||
];
|
||||
nativeBuildInputs = [ mingw_w64_cc ];
|
||||
overrideMain = args: args // { buildInputs = [ windows.pthreads ]; };
|
||||
|
||||
CARGO_BUILD_TARGET = "x86_64-pc-windows-gnu";
|
||||
};
|
||||
defaultPackage = packages.palantir;
|
||||
|
||||
# `nix run`
|
||||
|
|
@ -53,14 +74,12 @@
|
|||
# `nix develop`
|
||||
devShell = pkgs.mkShell {
|
||||
nativeBuildInputs = with pkgs; [
|
||||
(rust-bin.stable.latest.default.override {
|
||||
targets = [ "x86_64-pc-windows-gnu" ];
|
||||
})
|
||||
toolchain
|
||||
bacon
|
||||
mingw_w64_cc
|
||||
];
|
||||
depsBuildBuild = [ pkgs.wine64 ];
|
||||
buildInputs = [ windows.pthreads ];
|
||||
# buildInputs = [ windows.pthreads ];
|
||||
|
||||
CARGO_TARGET_X86_64_PC_WINDOWS_GNU_LINKER = "${mingw_w64_cc.targetPrefix}cc";
|
||||
CARGO_TARGET_X86_64_PC_WINDOWS_GNU_RUNNER = "wine64";
|
||||
|
|
|
|||
|
|
@ -1,9 +1,8 @@
|
|||
use crate::data::{DiskStats, DiskUsage};
|
||||
use crate::{Error, MultiSensorSource, Result, SensorData};
|
||||
use crate::{Error, MultiSensorSource, Result};
|
||||
use ahash::{AHashSet, AHasher};
|
||||
use regex::Regex;
|
||||
use std::ffi::CString;
|
||||
use std::fmt::Write;
|
||||
use std::fs::File;
|
||||
use std::hash::{Hash, Hasher};
|
||||
use std::io::{Read, Seek};
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
use crate::data::PowerUsage;
|
||||
use crate::linux::gpu::gpu_power;
|
||||
use crate::{Error, Result};
|
||||
use std::fmt::Write;
|
||||
use std::fs::{read_dir, read_to_string};
|
||||
use std::sync::atomic::{AtomicBool, Ordering};
|
||||
use tracing::warn;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue