2025-03-15 14:43:23 +01:00
|
|
|
{ pkgs , stdenv } :
|
2025-03-10 23:54:40 +01:00
|
|
|
|
|
|
|
with pkgs ;
|
|
|
|
with stdenv ;
|
|
|
|
|
|
|
|
mkDerivation {
|
|
|
|
pname = "journalctl-last-invocation" ;
|
|
|
|
version = "2025-03-10" ;
|
|
|
|
|
2025-03-15 13:59:05 +01:00
|
|
|
phases = [ "createSourcesPhase" "installPhase" ] ;
|
2025-03-10 23:54:40 +01:00
|
|
|
|
2025-03-15 13:59:05 +01:00
|
|
|
createSourcesPhase = ''
|
2025-03-15 14:43:23 +01:00
|
|
|
# Same directory structure that `unpackPhase` would use
|
2025-03-15 14:01:46 +01:00
|
|
|
mkdir -p /build/source
|
|
|
|
|
2025-03-15 13:59:05 +01:00
|
|
|
cat <<- EOF > /build/source/journalctl-last-invocation
|
2025-03-10 23:54:40 +01:00
|
|
|
#!${bash}/bin/sh
|
|
|
|
|
|
|
|
exec ${systemd}/bin/journalctl _SYSTEMD_INVOCATION_ID=\$( ${systemd}/bin/systemctl show --value --property=InvocationID \$1 )
|
|
|
|
EOF
|
2025-03-15 13:59:05 +01:00
|
|
|
'' ;
|
|
|
|
|
|
|
|
installPhase = ''
|
|
|
|
mkdir -p $out/bin
|
|
|
|
|
|
|
|
cp /build/source/journalctl-last-invocation $out/bin/
|
2025-03-10 23:54:40 +01:00
|
|
|
|
2025-03-15 13:59:05 +01:00
|
|
|
chmod +x $out/bin/journalctl-last-invocation
|
2025-03-10 23:54:40 +01:00
|
|
|
'' ;
|
|
|
|
}
|