Compare commits
3 Commits
e40d6fc2bb
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
64676aca5d | ||
|
|
5f3418f061 | ||
|
|
0411765052 |
8
flake.lock
generated
8
flake.lock
generated
@@ -20,16 +20,16 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1762653957,
|
"lastModified": 1764521362,
|
||||||
"narHash": "sha256-3em63zYO+s0NxxKwPXyzV80fXfwZOg7/LjYF5ndZltc=",
|
"narHash": "sha256-M101xMtWdF1eSD0xhiR8nG8CXRlHmv6V+VoY65Smwf4=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "c148fa0cf61fc3bb7b011f2d4f8d789964ea7dd0",
|
"rev": "871b9fd269ff6246794583ce4ee1031e1da71895",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "master",
|
"ref": "25.11",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
|||||||
43
flake.nix
43
flake.nix
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
description = "Nix flake for the activity logging script";
|
description = "Nix flake for the activity logging script";
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/master";
|
nixpkgs.url = "github:NixOS/nixpkgs/25.11";
|
||||||
sudoku-solver.url = "path:./src/sudoku-hs";
|
sudoku-solver.url = "path:./src/sudoku-hs";
|
||||||
};
|
};
|
||||||
outputs =
|
outputs =
|
||||||
@@ -39,6 +39,47 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
download = _final.python3Packages.download;
|
download = _final.python3Packages.download;
|
||||||
|
# Fix curl-impersonate-ff build issue with CMake 4.0+ requiring CMake >= 3.5
|
||||||
|
curl-impersonate-ff = prev.curl-impersonate-ff.overrideAttrs (oldAttrs: {
|
||||||
|
# Patch before configure so Makefile.in is patched
|
||||||
|
postPatch = (oldAttrs.postPatch or "") + ''
|
||||||
|
# Patch Makefile.in to add CMAKE_POLICY_VERSION_MINIMUM flag
|
||||||
|
if [ -f Makefile.in ]; then
|
||||||
|
sed -i 's|cmake -DCMAKE_BUILD_TYPE=Release|cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_BUILD_TYPE=Release|g' Makefile.in
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
# Patch after configure when Makefile exists and brotli is extracted
|
||||||
|
postConfigure = (oldAttrs.postConfigure or "") + ''
|
||||||
|
# Patch brotli CMakeLists.txt after extraction
|
||||||
|
for brotli_dir in brotli-*/; do
|
||||||
|
if [ -d "$brotli_dir" ] && [ -f "$brotli_dir/CMakeLists.txt" ]; then
|
||||||
|
sed -i 's/cmake_minimum_required(VERSION [0-9.]\+)/cmake_minimum_required(VERSION 3.5)/g' "$brotli_dir/CMakeLists.txt"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
# Also patch the generated Makefile
|
||||||
|
if [ -f Makefile ]; then
|
||||||
|
sed -i 's|cmake -DCMAKE_BUILD_TYPE=Release|cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_BUILD_TYPE=Release|g' Makefile
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
# Also fix curl-impersonate if it has the same issue
|
||||||
|
curl-impersonate = prev.curl-impersonate.overrideAttrs (oldAttrs: {
|
||||||
|
postPatch = (oldAttrs.postPatch or "") + ''
|
||||||
|
if [ -f Makefile.in ]; then
|
||||||
|
sed -i 's|cmake -DCMAKE_BUILD_TYPE=Release|cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_BUILD_TYPE=Release|g' Makefile.in
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
postConfigure = (oldAttrs.postConfigure or "") + ''
|
||||||
|
for brotli_dir in brotli-*/; do
|
||||||
|
if [ -d "$brotli_dir" ] && [ -f "$brotli_dir/CMakeLists.txt" ]; then
|
||||||
|
sed -i 's/cmake_minimum_required(VERSION [0-9.]\+)/cmake_minimum_required(VERSION 3.5)/g' "$brotli_dir/CMakeLists.txt"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if [ -f Makefile ]; then
|
||||||
|
sed -i 's|cmake -DCMAKE_BUILD_TYPE=Release|cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_BUILD_TYPE=Release|g' Makefile
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
});
|
||||||
};
|
};
|
||||||
packages.x86_64-linux =
|
packages.x86_64-linux =
|
||||||
let
|
let
|
||||||
|
|||||||
70
pkgs/furtherance.nix
Normal file
70
pkgs/furtherance.nix
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchFromGitHub,
|
||||||
|
rustPlatform,
|
||||||
|
fontconfig,
|
||||||
|
libxkbcommon,
|
||||||
|
openssl,
|
||||||
|
pkg-config,
|
||||||
|
xorg,
|
||||||
|
vulkan-loader,
|
||||||
|
wayland,
|
||||||
|
}:
|
||||||
|
rustPlatform.buildRustPackage (finalAttrs: {
|
||||||
|
pname = "furtherance";
|
||||||
|
version = "25.3.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "unobserved-io";
|
||||||
|
repo = "Furtherance";
|
||||||
|
rev = finalAttrs.version;
|
||||||
|
hash = "sha256-LyGO+fbsu16Us0+sK0T6HlGq7EwZWSetd+gCIKKEbkk=";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoHash = "sha256-j/5O40k12rl/gmRc1obo9ImdkZ0Mdrke2PCf6tFCWIo=";
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
pkg-config
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
fontconfig
|
||||||
|
openssl
|
||||||
|
libxkbcommon
|
||||||
|
xorg.libX11
|
||||||
|
xorg.libXScrnSaver
|
||||||
|
xorg.libXcursor
|
||||||
|
xorg.libXi
|
||||||
|
vulkan-loader
|
||||||
|
wayland
|
||||||
|
];
|
||||||
|
|
||||||
|
checkFlags = [
|
||||||
|
# panicked at src/tests/timer_tests.rs:30:9
|
||||||
|
"--skip=tests::timer_tests::timer_tests::test_split_task_input_basic"
|
||||||
|
];
|
||||||
|
|
||||||
|
postFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
|
||||||
|
patchelf $out/bin/${finalAttrs.pname} \
|
||||||
|
--add-rpath ${
|
||||||
|
lib.makeLibraryPath [
|
||||||
|
vulkan-loader
|
||||||
|
libxkbcommon
|
||||||
|
wayland
|
||||||
|
]
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Track your time without being tracked";
|
||||||
|
mainProgram = "furtherance";
|
||||||
|
homepage = "https://github.com/unobserved-io/Furtherance";
|
||||||
|
license = lib.licenses.gpl3Plus;
|
||||||
|
platforms = lib.platforms.linux;
|
||||||
|
maintainers = with lib.maintainers; [
|
||||||
|
CaptainJawZ
|
||||||
|
locnide
|
||||||
|
];
|
||||||
|
};
|
||||||
|
})
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
#!/usr/bin/env nix-shell
|
#!/usr/bin/env nix-shell
|
||||||
#! nix-shell -i bash -p bash yt-dlp curl-impersonate
|
#! nix-shell -i bash -p bash yt-dlp
|
||||||
|
|
||||||
minutes=5
|
minutes=5
|
||||||
time_alive=60
|
time_alive=60
|
||||||
|
|||||||
Reference in New Issue
Block a user