Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
f53d8f9
Sync master back into development (#430)
yubiuser Feb 24, 2025
6ea709a
Sync master back into development (#433)
yubiuser Feb 25, 2025
05eb5a9
Tweak convertUptime() to not rely on external date
yubiuser Feb 24, 2025
2f7ebaa
Fix resize during startup
yubiuser Feb 27, 2025
2cb9bd3
Fix resize during startup (#437)
yubiuser Feb 27, 2025
8233ca6
Fix indention
yubiuser Feb 27, 2025
cde0ac7
Fix typo: replace "remmote" with "remote"
rdwebdesign Feb 28, 2025
66993ab
Fix typo: replace "remmote" with "remote" (#439)
yubiuser Feb 28, 2025
9745bdb
Minor Readme tweaks
yubiuser Feb 28, 2025
909dc29
Tweak convertUptime() to not rely on external date (#429)
yubiuser Feb 28, 2025
97764a2
Minor Readme tweaks (#440)
yubiuser Feb 28, 2025
506c0b6
Prevent transient error messages where no temperature is provided (#428)
rrobgill Mar 4, 2025
5b00f06
.gitattributes: enforce LF (#442)
XhmikosR Mar 8, 2025
5c2febd
Allow JSON, Update and Version to be combined with other flags
yubiuser Feb 26, 2025
68afc9a
Remove function to output some data as json - Pi-hole v6 has an API f…
yubiuser Feb 26, 2025
80a0cfb
Fix padd -u
yubiuser Feb 26, 2025
ca7dcfd
Allow to perform update without authentication and on docker
yubiuser Mar 6, 2025
590ceeb
Drop JSON output and allow update command without authentication (#434)
DL6ER Mar 28, 2025
5940626
Fix two shellcheck warnings
yubiuser Mar 29, 2025
95ffbd5
fix dhcp display in padd tiny
christianboyle Mar 15, 2025
4dd69cb
fix dhcp display in padd tiny (#447)
yubiuser Mar 29, 2025
bd645e5
Replace the API domain with SERVER, only use cli_pw on localhost
darkexplosiveqwx Mar 18, 2025
600aecb
Change Domain to IP in `API_URL` (#450)
yubiuser Mar 29, 2025
eaf46cc
Add option to display PADD only once an exit
yubiuser Mar 6, 2025
2aeb96c
Don't show the startup counter if requested to only run once
yubiuser Mar 7, 2025
386477e
Substitute 'null' values returned by FTL for privacy level >1
yubiuser Mar 31, 2025
589b6df
Substitute 'null' values returned by FTL for privacy level >1 (#453)
yubiuser Apr 3, 2025
84a427e
Fix two shellcheck warnings (#451)
yubiuser Apr 4, 2025
21e6ac0
dependency check adjustment
mwoolweaver Apr 2, 2025
f350acf
check for dig and adjusts dependency check logic (#457)
yubiuser Apr 4, 2025
b64e3d9
fix word
mwoolweaver Apr 5, 2025
2440291
Add option to display PADD only once and exit (#443)
yubiuser Apr 5, 2025
2eb1057
Small readme fix (#459)
yubiuser Apr 5, 2025
33edd58
show version without auth
mwoolweaver Apr 9, 2025
37a9ab8
switch to using the retro logo in place of the green logo
mwoolweaver Mar 31, 2025
0cc17a2
Give the logo more space during startup
yubiuser Apr 21, 2025
51f8096
Adjust length of startup line
yubiuser Apr 21, 2025
a4641a0
switch to using the retro logo in place of the green logo (#454)
yubiuser Apr 21, 2025
cecbfb0
Give it more space
yubiuser Apr 21, 2025
5a5659d
show version without auth (#462)
yubiuser Apr 21, 2025
d04220a
Fix API_Port logic
yubiuser Apr 25, 2025
60071f4
Fix API_Port logic (#464)
yubiuser Apr 26, 2025
833e5c7
Use CODEOWNERS instead of deprecated dependbot/reviewers
yubiuser May 3, 2025
8e58364
Allow SERVER to be the full API path
darkexplosiveqwx Apr 23, 2025
3994afd
Whitespace changes, for SERVER to be API path
darkexplosiveqwx Apr 23, 2025
3ce5187
Fix a typo
darkexplosiveqwx Apr 23, 2025
13d5dea
move full API URL variable to --api
darkexplosiveqwx Apr 27, 2025
24387ea
Move check for both flags set down
darkexplosiveqwx May 11, 2025
eeecdf4
Revert response code logic
yubiuser May 11, 2025
5cc17bd
Invert response code logic (#466)
yubiuser May 16, 2025
49bee66
Use shell parameter expansion to split http_code and payload
yubiuser May 14, 2025
1a5d01c
Same for GetFTLData()
yubiuser May 14, 2025
eae4ccb
Merge branch 'development' into server-full-path
darkexplosiveqwx May 16, 2025
ec6314e
Allow specification of the exact API URL via new option --api (#463)
yubiuser Aug 5, 2025
b929cab
Use shell parameter expansion to split http_code and payload (#467)
yubiuser Aug 5, 2025
4e0d63f
Bump actions/checkout from 4.2.2 to 5.0.0
dependabot[bot] Aug 16, 2025
80d5793
Bump actions/checkout from 4.2.2 to 5.0.0 (#471)
yubiuser Aug 16, 2025
08e88bd
Add ShellCheck
yubiuser Aug 4, 2025
d0a34b1
Unify Github CI workflows
yubiuser Aug 4, 2025
2f245b9
Fix shellcheck compains
yubiuser Aug 4, 2025
a0c3943
Fix Copilot complaints
yubiuser Aug 5, 2025
7484216
Add ShellCheck and unify CI workflows (#470)
yubiuser Oct 5, 2025
f3b34fa
Pin github actions by sha
yubiuser Oct 5, 2025
6b8b148
Pin github actions by sha (#477)
yubiuser Oct 5, 2025
3751960
Bump actions/stale from 9.1.0 to 10.1.0
dependabot[bot] Oct 5, 2025
f13ad5f
Bump actions/stale from 9.1.0 to 10.1.0 (#476)
yubiuser Oct 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 2 additions & 17 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,17 +1,2 @@
# Auto detect text files and perform LF normalization
* text=auto

# Custom for Visual Studio
*.cs diff=csharp

# Standard to msysgit
*.doc diff=astextplain
*.DOC diff=astextplain
*.docx diff=astextplain
*.DOCX diff=astextplain
*.dot diff=astextplain
*.DOT diff=astextplain
*.pdf diff=astextplain
*.PDF diff=astextplain
*.rtf diff=astextplain
*.RTF diff=astextplain
# Enforce Unix newlines
* text=auto eol=lf
5 changes: 5 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# see https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners#codeowners-syntax

# These owners will be the default owners for everything in
# the repo. Unless a later match takes precedence,
* @pi-hole/padd-maintainers
2 changes: 0 additions & 2 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,3 @@ updates:
time: "10:00"
open-pull-requests-limit: 10
target-branch: development
reviewers:
- "pi-hole/padd-maintainers"
32 changes: 32 additions & 0 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: CI Tests
on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]

jobs:
shellcheck:
if: github.event.pull_request.draft == false
runs-on: ubuntu-latest
steps:
-
name: Checkout repository
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 #v5.0.0
with:
fetch-depth: 0 # Differential ShellCheck requires full git history

- name: Differential ShellCheck
uses: redhat-plumbers-in-action/differential-shellcheck@0d9e5b29625f871e6a4215380486d6f1a7cb6cdd #v5.5.5
with:
severity: warning
display-engine: sarif-fmt

- name: Spell-Checking
uses: codespell-project/actions-codespell@406322ec52dd7b488e48c1c4b82e2a8b3a1bf630 #v2.1
with:
ignore_words_file: .codespellignore

- name: Get editorconfig-checker
uses: editorconfig-checker/action-editorconfig-checker@f40bac9e7d9e7d298fbe36b83e1eff8f0de13fb8 # tag v2 is really out of date

- name: Run editorconfig-checker
run: editorconfig-checker
18 changes: 0 additions & 18 deletions .github/workflows/codespell.yml

This file was deleted.

14 changes: 0 additions & 14 deletions .github/workflows/editorconfig-checker.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/merge-conflict.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check if PRs are have merge conflicts
uses: eps1lon/[email protected]
uses: eps1lon/actions-label-merge-conflict@1df065ebe6e3310545d4f4c4e862e43bdca146f0 #v3.0.3
with:
dirtyLabel: "Merge Conflict"
repoToken: "${{ secrets.GITHUB_TOKEN }}"
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/stale.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
issues: write

steps:
- uses: actions/stale@v9.1.0
- uses: actions/stale@5f858e3efba33a5ca4407a664cc011ad407f2008 #v10.1.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 30
Expand All @@ -40,7 +40,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 #v5.0.0
- name: Remove 'stale' label
run: gh issue edit ${{ github.event.issue.number }} --remove-label ${{ env.stale_label }}
env:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/stale_pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
pull-requests: write

steps:
- uses: actions/stale@v9.1.0
- uses: actions/stale@5f858e3efba33a5ca4407a664cc011ad407f2008 #v10.1.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
# Do not automatically mark PR/issue as stale
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/sync-back-to-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
name: Syncing branches
steps:
- name: Checkout
uses: actions/checkout@v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 #v5.0.0
- name: Opening pull request
run: gh pr create -B development -H master --title 'Sync master back into development' --body 'Created by Github action' --label 'Internal'
env:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/version_bump.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
shell: bash

- name: Checkout code
uses: actions/checkout@v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 #v5.0.0
with:
ref: 'development'

Expand Down
6 changes: 6 additions & 0 deletions .shellcheckrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
external-sources=true # allow shellcheck to read external sources
disable=SC3043 #disable SC3043: In POSIX sh, local is undefined.
enable=useless-use-of-cat # disabled by default as of shellcheck 0.11.0
enable=avoid-negated-conditions # avoid-negated-conditions is optional as of shellcheck 0.11.0
enable=require-variable-braces
enable=deprecate-which
11 changes: 8 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# PADD

PADD (formerly Chronometer2) is a more expansive version of the original chronometer.sh that is included with [Pi-Hole](https://pi-hole.net). PADD provides in-depth information about your Pi-hole.
PADD (formerly Chronometer2) is a more expansive version of the original chronometer.sh that was included with [Pi-Hole](https://pi-hole.net). PADD provides in-depth information about your Pi-hole.

![PADD Screenshot](https://pi-hole.github.io/graphics/Screenshots/padd.png)

Expand All @@ -27,6 +27,11 @@ PADD (formerly Chronometer2) is a more expansive version of the original chronom
```bash
sudo chmod +x padd.sh
```
### Dependencies
- curl
- jq
- dig
- tput

## Using PADD

Expand All @@ -40,7 +45,7 @@ PADD (formerly Chronometer2) is a more expansive version of the original chronom

### PADD from other machine

With PADD v4.0.0 and Pi-hole v6 it is also possible to run PADD from a machine that is not running Pi-hole
- With PADD v4.0.0 and Pi-hole v6 it is also possible to run PADD from a machine that is not running Pi-hole

```bash
./padd.sh --server <DOMAIN|IP>
Expand All @@ -50,7 +55,7 @@ With PADD v4.0.0 and Pi-hole v6 it is also possible to run PADD from a machine t

Pi-hole v6 uses a completely new API with a new authentication mechanism

If you run PADD on the same machine as Pi-hole, it's possible to bypass authentication when your local user is member of the `pihole` group (specifically, if you can access `/etc/pihole/cli_pw).
If you run PADD on the same machine as Pi-hole, it's possible to bypass authentication when your local user is member of the `pihole` group (specifically, if you can access `/etc/pihole/cli_pw`).
For details see [https://github.com/pi-hole/FTL/pull/1999](https://github.com/pi-hole/FTL/pull/1999)

If this is not the case, PADD will ask you for your password and (if configured) your two factor authentication token. You can also pass those as arguments
Expand Down
Loading