Clean up content

This commit is contained in:
Daniel_I_Am 2022-06-14 19:17:58 +02:00
parent 1426ee409c
commit ee9579845e
11 changed files with 42 additions and 72 deletions

View File

@ -1,7 +0,0 @@
---
title: "Filler 1"
date: 2022-04-16T08:45:13Z
draft: false
---
Filler 1

View File

@ -1,7 +0,0 @@
---
title: "Filler 10"
date: 2022-04-19T08:45:13Z
draft: false
---
Filler 10

View File

@ -1,7 +0,0 @@
---
title: "Filler 2"
date: 2022-04-17T08:45:13Z
draft: false
---
Filler 2

View File

@ -1,7 +0,0 @@
---
title: "Filler 3"
date: 2022-04-18T08:45:13Z
draft: false
---
Filler 3

View File

@ -1,7 +0,0 @@
---
title: "Filler 4"
date: 2022-04-19T08:45:13Z
draft: false
---
Filler 4

View File

@ -1,7 +0,0 @@
---
title: "Filler 5"
date: 2022-04-19T08:45:13Z
draft: false
---
Filler 5

View File

@ -1,7 +0,0 @@
---
title: "Filler 6"
date: 2022-04-19T08:45:13Z
draft: false
---
Filler 6

View File

@ -1,7 +0,0 @@
---
title: "Filler 7"
date: 2022-04-19T08:45:13Z
draft: false
---
Filler 7

View File

@ -1,7 +0,0 @@
---
title: "Filler 8"
date: 2022-04-19T08:45:13Z
draft: false
---
Filler 8

View File

@ -1,7 +0,0 @@
---
title: "Filler 9"
date: 2022-04-19T08:45:13Z
draft: false
---
Filler 9

View File

@ -1,11 +1,51 @@
---
title: "Seconds since last pacman sync"
date: 2022-05-19T08:45:13Z
date: 2022-06-11T08:45:13Z
tags: ["archlinux", "linux", "pacman"]
draft: false
---
We can echo the result of the current timestamp subtracted from the last edit timestamp in `/var/lib/pacman/local/*/desc`.
## Result
We can find out how many seconds ago the last package was installed or updated using pacman by using the following command:
```sh {data-copy-button=true}
echo $(expr $(date +%s) - $(grep -rn -A 1 %INSTALLDATE% /var/lib/pacman/local/*/desc | grep -oP '\d{10,}$' | sort | tail -1))
```
---
## Explanation
Let's dive into the weeds to see how this is built up.
Pacman stores its local cache on your system at `/var/lib/pacman/local/`. This folder contains a couple files for every package.
Try reading the files for the kernel for example. We are only interested in the installation date, so let's focus on that field.
```sh
$ grep -A 1 '%INSTALLDATE%' /var/lib/pacman/local/linux-5.17.5.arch1-1/desc
%INSTALLDATE%
1651693442
```
By running this on all files in the pacman cache directory and then filtering for numbers, you get to see the entire list of dates for every package.
```sh
$ grep -A 1 '%INSTALLDATE%' /var/lib/pacman/local/*/desc | grep -oP '\d{10,}$' | head -5
1642498423
1644184812
1640442731
1640443485
1640443485
```
Now we just need to sort the entries and pick the highest value. This is the timestamp of our last package installation.
```sh
$ grep -rn -A 1 %INSTALLDATE% /var/lib/pacman/local/*/desc | grep -oP '\d{10,}$' | sort | tail -1
1654790640
```
Now we just have to subtract this timestamp from the current date to get the amount of seconds since the last package installation.
```sh {data-copy-button=true}
echo $(expr $(date +%s) - $(grep -rn -A 1 %INSTALLDATE% /var/lib/pacman/local/*/desc | grep -oP '\d{10,}$' | sort | tail -1))