Shows your public IP address with VPN detection, IPv6 leak warnings, and a security status banner. Displays local and public IPs (IPv4/IPv6), country flag, city, ISP, and optional map tile. Click any IP to copy. Uses Mullvad's privacy-respecting API.
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
EGO-A-005 manual_review
extensions should not access the clipboard directly
Direct clipboard access via `St.Clipboard.get_default()` requires reviewer scrutiny.
extension.js:377
St.Clipboard.get_default()
EGO-A-004 warning
extension files should not contain excessive ungated console logging
File contains 8 ungated console.log/warn/error calls (threshold: 5).
extension.js:78
console.error(`[Public IP] Cache dir creation failed: ${e.message}`)
extension.js:535
console.error(`[Public IP] Panel position reset failed: ${e.message}`)
extension.js:725
console.error(`[Public IP] IPv4 fetch failed: ${ipv4Result.reason}`)
extension.js:727
console.error(`[Public IP] IPv6 fetch failed: ${ipv6Result.reason}`)
extension.js:733
console.error('[Public IP] IPv4 JSON parse failed')
extension.js:735
console.error('[Public IP] IPv6 JSON parse failed')
extension.js:849
console.error(`[Public IP] Map download failed: ${e.message}`)
extension.js:854
console.error(`[Public IP] Update failed: ${e.message}`)
EGO-X-002 warning
extensions should not use synchronous subprocess APIs in shell code
Shell code should avoid synchronous subprocess APIs like `GLib.spawn_command_line_sync()` and `GLib.spawn_sync()`.
extension.js:413
GLib.spawn_command_line_sync('ip -o addr show scope global')
EGO-P-006 warning
unnecessary build and translation artifacts should not be shipped
Compiled GSettings schemas should not be shipped for 45+ packages.
Don't include unnecessary files
schemas/gschemas.compiled
schemas/gschemas.compiled
| Version | Status |
|---|---|
| 1 | Active |