AutoHotkey script to concatenate AgentDVR videos

This AutoHotkey script concatenates video files using FFmpeg and plays the output with mpv. Below is a breakdown including what needs editing for use on another computer.


What the Script Does

The script:

  1. Reads file paths from the clipboard.
  2. Creates a text file (mylist.txt) listing video files for FFmpeg.
  3. Concatenates videos into a single file (output.mkv or output.mp4) using FFmpeg.
  4. Renames existing output files with a timestamp to avoid overwriting.
  5. Plays the resulting video with mpv.

Script Breakdown

  • Input Check: Ensures the clipboard contains file paths and the first path includes D:\windows (a specific folder check).
  • Folder Processing:
  • Strips quotes from the base path and sets it as the working directory.
  • Loops through clipboard lines, formats paths for mylist.txt (e.g., file 'video1.mp4').
  • Sorts the file list and writes it to mylist.txt.
  • Detects if .mkv files are present to set output format (.mkv or .mp4).
  • Runs FFmpeg with -f concat to merge files without re-encoding (-c copy).
  • Plays the output with mpv.
  • File Management: If the output file exists, it’s renamed with a timestamp (e.g., output_2025-05-11-14-30.mp4).

What Needs Editing

To make the script work on another computer, modify these elements:

  1. Clipboard Path Check:
  • The script checks for D:\windows in the first clipboard line. Replace with a relevant path or remove the check:
    autohotkey if (!InStr(firstLine, "D:\windows")) { ExitApp }
    Fix: Comment out or replace "D:\windows" with the user’s base path (e.g., C:\Videos).
  1. FFmpeg Path:
  • The script assumes ffmpeg is in the system’s PATH. Ensure FFmpeg is installed and accessible.
    • Fix: Install FFmpeg and add it to PATH, or specify the full path:
      autohotkey ffmpegCmd := """C:\path\to\ffmpeg.exe"" -f concat -safe 0 -i """ . listFile . """ -c copy """ . FileName . """"
  1. mpv Path:
  • The script uses mpv.exe to play the output. Ensure mpv is installed and in PATH.
    • Fix: Install mpv and add to PATH, or specify the full path:
      autohotkey Run, """C:\path\to\mpv.exe"" ""%FileName%"""
  1. Base Path:
  • The script derives the base path from the clipboard. Ensure clipboard paths match the user’s folder structure.
    • Fix: Test with paths relative to the user’s video folder (e.g., C:\Videos\video1.mp4).
  1. File Extensions:
  • The script assumes .mkv or .mp4. If other formats are used, modify the extension logic:
    autohotkey isMKV := InStr(a, ".mkv") FileName := isMKV ? basePath . "output.mkv" : basePath . "output.mp4"
    Fix: Add checks for other extensions (e.g., .avi, .mov).
  1. AutoHotkey:

Example Customization

For a user with videos in C:\Videos, FFmpeg at C:\FFmpeg\bin\ffmpeg.exe, and mpv at C:\mpv\mpv.exe:

if (!InStr(firstLine, "C:\Videos")) ; Update path
{
    ExitApp
}
ffmpegCmd := """C:\FFmpeg\bin\ffmpeg.exe"" -f concat -safe 0 -i """ . listFile . """ -c copy """ . FileName . """"
Run, """C:\mpv\mpv.exe"" ""%FileName%"""

Usage

  1. Install AutoHotkey, FFmpeg, and mpv.
  2. Copy paths of video files to the clipboard. (Select the videos and hold down Shift + Right Click and select Copy as path in the Windows Explorer context menu.)
  3. Run the script.
  4. Check the output video (output.mkv or output.mp4) in the base folder.

Notes

  • Ensure all video files have the same codec and resolution for seamless concatenation.
  • Test the script with a small set of files first.
  • Backup important files before running to avoid accidental overwrites.

ProcessFolder(basePath) {    
    ; Remove any leading/trailing quotes from basePath
    basePath := StrReplace(basePath, """", "")    
    SetWorkingDir %basePath%   
    a := ""
    insert := "file '"
    Loop, parse, Clipboard, `n, `r
    {
        if (A_LoopField != "")
        {
            filePath := StrReplace(A_LoopField, basePath, "")
            filePath := StrReplace(filePath, """", "")
            a .= insert . filePath . "'`r`n"
        }
    }   
    
    Clipboard := a
    Sort, a
    
    isMKV := InStr(a, ".mkv")  
    listFile := basePath . "mylist.txt"   
    FileDelete, %listFile%
    MyFileObj := FileOpen(listFile, "w")
    bytesWritten := MyFileObj.Write(a)
    MyFileObj.Close()
    Sleep, 500    
    FileName := isMKV ? basePath . "output.mkv" : basePath . "output.mp4"
    
    IfExist, %FileName%
    {
        SplitPath, FileName,, Dir, Ext, NameNoExt
        FormatTime, DateTimeNow,, yyyy-MM-dd-HH-mm
        NewFileName := Dir "\" NameNoExt "_" DateTimeNow "." Ext
        FileMove, %FileName%, %NewFileName%
    }    
    ffmpegCmd := "ffmpeg -f concat -safe 0 -i """ . listFile . """ -c copy """ . FileName . """"
	RunWait, cmd.exe /c %ffmpegCmd% 2>&1, , Hide
    Run, "mpv.exe" "%FileName%"   
    return
}

; Check if clipboard is empty
if (Clipboard = "")
{
    ExitApp
}

Loop, parse, Clipboard, `n, `r
{
    firstLine := A_LoopField
    break
}

if (!InStr(firstLine, "D:\windows"))
{
    ExitApp
}

SplitPath, firstLine,, basePath
basePath := RTrim(basePath, "\") . "\"

if (basePath)
    ProcessFolder(basePath)
else
    MsgBox, Could not determine folder path from clipboard!

Managing Sven Co-op Maps with Custom Scripts

https://sbmesh.com/delete_map.ps1

https://sbmesh.com/delete_map.sh

Sven Co-op players often download custom maps, but managing them can be tedious. To simplify map cleanup, I’ve created two scripts—one for Windows (PowerShell) and one for Linux (Bash)—that delete specific maps and optionally their series counterparts, including associated .res and .cfg files. These scripts work in the default Sven Co-op map download folders and handle map names with leading zeros or trailing text (e.g., mapname01.bsp, othermap2etc.bsp).

Windows PowerShell Script

The PowerShell script operates in C:\Program Files (x86)\Steam\steamapps\common\Sven Co-op\svencoop_downloads\maps. It prompts for a map name (without needing .bsp), deletes the specified map, and offers to delete all maps in the same series.

Features

  • Deletes .bsp, .res, and .cfg files for the specified map.
  • Recognizes series maps (e.g., a_jungle_01, a_jungle_2etc) and deletes all in the series if confirmed.
  • No need to type .bsp extension.

Usage

  1. Save the script as delete_map.ps1 in the maps folder.
  2. Run it in PowerShell.
  3. Enter a map name (e.g., a_jungle_1).
  4. Confirm if you want to delete series maps (e.g., a_jungle_*.bsp, .res, .cfg).

Linux Bash Script

The Bash script works in ~/.local/share/Steam/steamapps/common/Sven Co-op/svencoop_downloads/maps. It mirrors the PowerShell script’s functionality for Linux users.

Features

  • Deletes .bsp, .res, and .cfg files for the entered map.
  • Handles series maps with leading zeros or trailing text.
  • .bsp extension is optional.

Usage

  1. Save the script as delete_map.sh in the maps folder.
  2. Make it executable: chmod +x delete_map.sh.
  3. Run it: ./delete_map.sh.
  4. Enter a map name and confirm series deletion if prompted.

Why Use These Scripts?

Both scripts streamline map management by:

  • Automating deletion of related files.
  • Handling complex map naming conventions.
  • Offering series deletion for quick cleanup.

Place the scripts in their respective map folders, and enjoy a clutter-free Sven Co-op experience!

Exploring the Ozon3 Perl Module for Air Quality Data

https://sbmesh.com/Ozon3.pm

The Ozon3 Perl module is a lightweight interface to the World Air Quality Index (WAQI) API, designed to fetch real-time air quality data based on geographic coordinates. Modeled after the Python Ozon3 library, it provides a robust way to retrieve Air Quality Index (AQI) and pollutant metrics with optional rate limiting.

Key Features

  • WAQI API Integration: Connects to https://api.waqi.info/ to retrieve air quality data.
  • Rate Limiting: Supports up to 1000 API calls per second using Schedule::RateLimiter (optional).
  • Error Handling: Comprehensive checks for invalid tokens, rate limits, and API errors.
  • Data Extraction: Returns detailed AQI, pollutant levels (e.g., PM2.5, PM10, NO2), and health implications.

Core Components

Initialization (new)

  • Requires a WAQI API token.
  • Sets up LWP::UserAgent for HTTP requests and Schedule::RateLimiter for throttling.
  • Validates the token by querying the API with a test request for London.

Fetching Data (get_air_quality)

  • Takes latitude and longitude as inputs.
  • Constructs a URL with escaped parameters and the API token.
  • Returns a hashref containing AQI, pollutant concentrations, station details, and health implications.

Data Processing (_extract_live_data)

  • Extracts metrics like AQI, PM2.5, PM10, CO, and meteorological data (e.g., temperature, humidity).
  • Normalizes pollutant names (e.g., pm25 to pm2.5).
  • Converts AQI into human-readable meanings and health implications.

Utility Methods

  • _check_token_validity: Verifies the API token.
  • _check_and_get_data_obj: Handles HTTP responses and API errors.
  • _aqi_meaning: Maps AQI values to categories (e.g., “Good,” “Unhealthy”) and health risks.
  • _as_float: Ensures numeric values are properly formatted.

Usage Example

use Ozon3;
my $ozon3 = Ozon3->new(token => 'your_waqi_token');
my $aq = $ozon3->get_air_quality(37.7749, -122.4194); # San Francisco
if ($aq) {
    print "AQI: $aq->{aqi} ($aq->{aqi_meaning})\n";
    print "PM2.5: $aq->{pm2.5} µg/m³\n";
}

Dependencies

  • LWP::UserAgent: For HTTP requests.
  • JSON::MaybeXS: For parsing API responses.
  • URI::Escape: For URL encoding.
  • Schedule::RateLimiter: Optional, for rate limiting.

Notes

  • The module gracefully handles missing dependencies or failed initializations.
  • Rate limiting is optional; if Schedule::RateLimiter fails, the module proceeds without it.
  • Comprehensive error messages aid debugging (e.g., invalid tokens, unknown stations).

Conclusion

The Ozon3 module is a reliable tool for developers needing air quality data in Perl applications. Its robust error handling and flexible design make it suitable for both small scripts and large systems.

Source: Adapted from the Ozon3 Python library by Ozon3Org.

linux firefox Open With addon python script that works with Brave and Librewolf

https://addons.mozilla.org/en-US/firefox/addon/open-with

#!/usr/bin/env python
from __future__ import print_function

import os
import sys
import json
import struct
import subprocess

VERSION = '7.1b2'

try:
	sys.stdin.buffer

	# Python 3.x version
	# Read a message from stdin and decode it.
	def getMessage():
		rawLength = sys.stdin.buffer.read(4)
		if len(rawLength) == 0:
			sys.exit(0)
		messageLength = struct.unpack('@I', rawLength)[0]
		message = sys.stdin.buffer.read(messageLength).decode('utf-8')
		return json.loads(message)

	# Send an encoded message to stdout
	def sendMessage(messageContent):
		encodedContent = json.dumps(messageContent).encode('utf-8')
		encodedLength = struct.pack('@I', len(encodedContent))

		sys.stdout.buffer.write(encodedLength)
		sys.stdout.buffer.write(encodedContent)
		sys.stdout.buffer.flush()

except AttributeError:
	# Python 2.x version (if sys.stdin.buffer is not defined)
	# Read a message from stdin and decode it.
	def getMessage():
		rawLength = sys.stdin.read(4)
		if len(rawLength) == 0:
			sys.exit(0)
		messageLength = struct.unpack('@I', rawLength)[0]
		message = sys.stdin.read(messageLength)
		return json.loads(message)

	# Send an encoded message to stdout
	def sendMessage(messageContent):
		encodedContent = json.dumps(messageContent)
		encodedLength = struct.pack('@I', len(encodedContent))

		sys.stdout.write(encodedLength)
		sys.stdout.write(encodedContent)
		sys.stdout.flush()


def install():
	home_path = os.getenv('HOME')

	manifest = {
		'name': 'open_with',
		'description': 'Open With native host',
		'path': os.path.realpath(__file__),
		'type': 'stdio',
	}
	locations = {
		'chrome': os.path.join(home_path, '.config', 'google-chrome', 'NativeMessagingHosts'),
        'brave-browser': os.path.join(home_path, '.config', 'BraveSoftware', 'Brave-Browser', 'NativeMessagingHosts'),
        'brave': os.path.join(home_path, '.config', 'BraveSoftware', 'Brave-Browser', 'NativeMessagingHosts'),
		'chromium': os.path.join(home_path, '.config', 'chromium', 'NativeMessagingHosts'),
		'firefox': os.path.join(home_path, '.mozilla', 'native-messaging-hosts'),
		'librewolf': os.path.join(home_path, '.librewolf', 'native-messaging-hosts'),
	}
	filename = 'open_with.json'

	for browser, location in locations.items():
		if os.path.exists(os.path.dirname(location)):
			if not os.path.exists(location):
				os.mkdir(location)

			browser_manifest = manifest.copy()
			if browser == 'firefox' or browser == 'librewolf':
				browser_manifest['allowed_extensions'] = ['openwith@darktrojan.net']
			else:
				browser_manifest['allowed_origins'] = [
					'chrome-extension://cogjlncmljjnjpbgppagklanlcbchlno/',  # Chrome
					'chrome-extension://fbmcaggceafhobjkhnaakhgfmdaadhhg/',  # Opera
				]

			with open(os.path.join(location, filename), 'w') as file:
				file.write(
					json.dumps(browser_manifest, indent=2, separators=(',', ': '), sort_keys=True).replace('  ', '\t') + '\n'
				)


def _read_desktop_file(path):
	with open(path, 'r') as desktop_file:
		current_section = None
		name = None
		command = None
		for line in desktop_file:
			if line[0] == '[':
				current_section = line[1:-2]
			if current_section != 'Desktop Entry':
				continue

			if line.startswith('Name='):
				name = line[5:].strip()
			elif line.startswith('Exec='):
				command = line[5:].strip()

		return {
			'name': name,
			'command': command
		}


def find_browsers():
	apps = [
		'Chrome',
		'Chromium',
		'chromium-browser',
		'firefox',
		'Firefox',
		'Google Chrome',
		'google-chrome',
		'opera',
		'Opera',
		'SeaMonkey',
		'seamonkey',
		'brave-browser',
        'brave',
		'librewolf',
	]
	paths = [
		os.path.join(os.getenv('HOME'), '.local/share/applications'),
		'/usr/local/share/applications',
		'/usr/share/applications'
	]
	suffix = '.desktop'

	results = []
	for p in paths:
		for a in apps:
			fp = os.path.join(p, a) + suffix
			if os.path.exists(fp):
				results.append(_read_desktop_file(fp))
	return results


def listen():
	receivedMessage = getMessage()
	if receivedMessage == 'ping':
		sendMessage({
			'version': VERSION,
			'file': os.path.realpath(__file__)
		})
	elif receivedMessage == 'find':
		sendMessage(find_browsers())
	else:
		for k, v in os.environ.items():
			if k.startswith('MOZ_'):
				try:
					os.unsetenv(k)
				except:
					os.environ[k] = ''

		devnull = open(os.devnull, 'w')
		subprocess.Popen(receivedMessage, stdout=devnull, stderr=devnull)
		sendMessage(None)


if __name__ == '__main__':
	if len(sys.argv) == 2:
		if sys.argv[1] == 'install':
			install()
			sys.exit(0)
		elif sys.argv[1] == 'find_browsers':
			print(find_browsers())
			sys.exit(0)

	allowed_extensions = [
		'openwith@darktrojan.net',
		'chrome-extension://cogjlncmljjnjpbgppagklanlcbchlno/',
		'chrome-extension://fbmcaggceafhobjkhnaakhgfmdaadhhg/',
	]
	for ae in allowed_extensions:
		if ae in sys.argv:
			listen()
			sys.exit(0)

	print('Open With native helper, version %s.' % VERSION)

CDP 8 / Composers Desktop Project ARM64 aarch64 binaries Raspberry Pi etc

compiled on debian 12 with an orange pi 5

https://sbmesh.com/CDP8aarch64.zip

I’m using it with Renoise CDP Interface tool https://www.renoise.com/tools/cdp-interface

The Composers Desktop Project (CDP) software is a suite of tools developed for in-depth sound manipulation and transformation, aimed primarily at composers and sound designers interested in musique concrète and experimental sound design.

abfdcode
abfpan
abfpan2
analjoin
asciiget
blur
bounce
brkdur
brktopi
brownian
caltrain
cantor
cascade
cdparams
cdparams_other
cdparse
ceracu
channelx
chanphase
chirikov
chorder
chxformat
clicknew
clip
columns
combine
constrict
convert_to_midi
copysfx
crumble
crystal
cubicspline
dirsf
diskspace
distcut
distmark
distmore
distort
distortt
distrep
distshift
dshift
dvdwind
envcut
envel
envnu
envspeak
extend
fastconv
features
filter
filtrage
fixgobo
flatten
flutter
fmdcode
focus
fofex
formants
fractal
fracture
frame
freeze
fturanal
gate
get_partials
getcol
glisten
gobo
gobosee
grain
grainex
hfperm
hilite
histconv
housekeep
hover
hover2
impulse
interlx
isolate
iterfof
iterline
iterlinef
listaudevs
listdate
logdate
madrid
manysil
matrix
maxsamp2
mchanpan
mchanrev
mchiter
mchshred
mchstereo
mchzig
modify
morph
motor
mton
multimix
multiosc
multisynth
newdelay
newmix
newmorph
newscales
newsynth
newtex
njoin
nmix
notchinvert
oneform
onset
packet
pagrab
pairex
panorama
paplay
partition
paudition
paview
pdisplay
peak
peakfind
peakiso
phase
phasor
pitch
pitchinfo
pmodify
prefix
progmach
psow
ptobrk
pulser
putcol
pview
pvoc
pvplay
quirk
recsf
refocus
rejoin
repair
repeater
repitch
retime
reverb
rmresp
rmsinfo
rmverb
rotor
scramble
search
selfsim
sfecho
sfedit
sfprops
shifter
shrink
silend
smooth
sndinfo
sorter
spacedesign
spec
specanal
specav
specenv
specfnu
specfold
specgrids
specinfo
speclean
specnu
specross
specsphinx
spectrum
spectstr
spectune
spectwin
speculate
specvu
spike
spin
splinter
strands
strange
strans
stretch
stretcha
stutter
submix
subtract
superaccu
suppress
synfilt
synspline
synth
tangent
tapdelay
tesselate
texmchan
texture
tkusage
tkusage_other
topantail2
tostereo
transit
tremenv
tremolo
ts
tsconvert
tunevary
tweet
unknot
vectors
verges
vuform
waveform
wrappage

Desktop

Here is my Orange Pi 5 that I’ve been using instead of my desktop PC. It is an arm64 single board computer with 16GB of ram!

firefox + palemoon addons

incase my mountain of computers and hardddrives get destroyed

Firefox

Add custom search engine extension 4.2 true {af37054b-3ace-46a2-ac59-709e4412bec6}
Amazon.co.uk extension 1.9 true amazon@search.mozilla.org
Autofill extension 9.6.6 true {143f479b-4cb2-4d8c-8c31-ae8653bc6054}
Behind The Overlay extension 0.1.6 true jid1-Y3WfE7td45aWDw@jetpack
Bing extension 1.3 true bing@search.mozilla.org
Black New Tab extension 1.0.0 true {3c53fae8-7f6e-4c86-b595-43f97766b977}
Chambers (UK) extension 1.0 true chambers-en-GB@search.mozilla.org
Check4Change extension 2.2.3 true check4change-owner@mozdev.org
Close Tabs to the Left extension 1.0.0 true closetabstotheleft@parkerm.github.io
Context Search extension 4.1.6 true olivier.debroqueville@gmail.com
Cookie Quick Manager extension 0.5rc2 true {60f82f00-9ad5-4de5-b31c-b16a47c51558}
Dark Background and Light Text extension 0.7.6 true jid1-QoFqdK4qzUfGWQ@jetpack
Disconnect extension 20.3.1.1 true 2.0@disconnect.me
DownThemAll! extension 4.2.6 true {DDC359D1-844A-42a7-9AA1-88A850A938A8}
DuckDuckGo extension 1.1 true ddg@search.mozilla.org
eBay extension 1.3 true ebay@search.mozilla.org
Forecastfox (fix version) extension 4.26 true forecastfox@s3_fix_version
Forget Me Not – Forget cookies & other data extension 2.2.8 true forget-me-not@lusito.info
Google extension 1.1 true google@search.mozilla.org
Greasemonkey extension 4.11 true {e4a8a97b-f2ed-450b-b12d-ee082ba24781}
HTTPS Everywhere extension 2021.4.15 true https-everywhere-eff@eff.org
I don’t care about cookies extension 3.3.1 true jid1-KKzOGWgsW3Ao4Q@jetpack
ImageBlock extension 5.0 true imageblock@hemantvats.com
JavaScript Toggle On and Off extension 0.2.4 true {479f0278-2c34-4365-b9f0-1d328d0f0a40}
Nitter Instead extension 2.4 true {3fe116df-848d-4027-9ae8-b298d48eab20}
NoScript extension 11.2.11 true {73a6fe31-595d-460b-a920-fcc0f8843232}
Open Tabs Next to Current extension 2.0.14 true opentabsnexttocurrent@sblask
Open With extension 7.2.5 true openwith@darktrojan.net
QOwnNotes Web Companion extension 21.6.0 true WebCompanion@qownnotes.org
Random Bookmark extension 2.0.12 true random-bookmark@stevenaleong.com
Random Bookmark From Folder extension 2.1 true randombookmark@pikadudeno1.com
Referer Control extension 1.31 true {cde47992-8aa7-4206-9e98-680a2d20f798}
RSSPreview extension 3.15 true {7799824a-30fe-4c67-8b3e-7094ea203c94}
SingleFileZ extension 1.0.29 true {e4db92bc-3213-493d-bd9e-5ff2afc72da6}
Smart HTTPS extension 0.3.1 true {b3e677f4-1150-4387-8629-da738260a48e}
Stylus extension 1.5.19 true {7a7a4a92-a2a0-41d1-9fd7-1e92480d612d}
Tab Reloader (page auto refresh) extension 0.3.7 true jid0-bnmfwWw2w2w4e4edvcdDbnMhdVg@jetpack
uBlock Origin extension 1.37.0 true uBlock0@raymondhill.net
uMatrix extension 1.4.4 true uMatrix@raymondhill.net
UnLazy extension 8.0.6.28 true unlazy-alpha1@eladkarako.com
Update Scanner extension 4.4.0 true {c07d1a49-9894-49ff-a594-38960ede8fb9}
Video DownloadHelper extension 7.6.0 true {b9db16a4-6edc-47ec-a1f4-b86292ed211d}
Vimium C – All by Keyboard extension 1.90.2 true vimium-c@gdh1995.cn
Weather extension 5.0.9 true {a79a9c4c-9c3f-4bf4-9e58-6574cc0b7ecb}
Web Archives extension 2.1.0 true {d07ccf11-c0cd-4938-a265-2a4d6ad01189}
Wikipedia (en) extension 1.1 true wikipedia@search.mozilla.org
Work Offline extension 0.1.4 true {2936ba13-a63a-41cf-a4e5-79274a38379e}
Youtube Audio extension 0.0.2.5 true {580efa7

Add custom search engine extension 4.2 true {af37054b-3ace-46a2-ac59-709e4412bec6}
Add-ons Search Detection extension 2.0.0 true addons-search-detection@mozilla.com
Amazon.co.uk extension 1.9 true amazon@search.mozilla.org
Amazon.com extension 1.3 true amazondotcom@search.mozilla.org
Behind The Overlay extension 0.2.1 true jid1-Y3WfE7td45aWDw@jetpack
Bing extension 1.3 true bing@search.mozilla.org
Black New Tab extension 1.0.0 true {3c53fae8-7f6e-4c86-b595-43f97766b977}
Bypass Paywalls extension 1.7.9 true bypasspaywalls@bypasspaywalls
Chambers (UK) extension 1.0 true chambers-en-GB@search.mozilla.org
Check4Change extension 2.2.4 true check4change-owner@mozdev.org
Context Search extension 4.3.0 true olivier.debroqueville@gmail.com
Currency Converter extension 0.6.9 true {8499351e-6812-4751-9b57-cf16f69fecec}
Dark Background and Light Text extension 0.7.6 true jid1-QoFqdK4qzUfGWQ@jetpack
DuckDuckGo extension 1.1 true ddg@search.mozilla.org
eBay extension 1.3 true ebay@search.mozilla.org
Flagfox extension 6.1.49 true {1018e4d6-728f-4b20-ad56-37578a4de76b}
Forecastfox (fix version) extension 4.26 true forecastfox@s3_fix_version
Forget Me Not – Forget cookies & other data extension 2.2.8 true forget-me-not@lusito.info
Google extension 1.2 true google@search.mozilla.org
Greasemonkey extension 4.11 true {e4a8a97b-f2ed-450b-b12d-ee082ba24781}
I don’t care about cookies extension 3.3.8 true jid1-KKzOGWgsW3Ao4Q@jetpack
Nitter Instead extension 2.5.3 true {3fe116df-848d-4027-9ae8-b298d48eab20}
NoScript extension 11.4.4rc1 true {73a6fe31-595d-460b-a920-fcc0f8843232}
Old Reddit Redirect extension 1.6.0 true {9063c2e9-e07c-4c2c-9646-cfe7ca8d0498}
Open Tabs Next to Current extension 2.0.14 true opentabsnexttocurrent@sblask
Open With extension 7.2.6 true openwith@darktrojan.net
QOwnNotes Web Companion extension 22.2.3 true WebCompanion@qownnotes.org
Random Bookmark extension 2.1.0 true random-bookmark@stevenaleong.com
Random Bookmark From Folder extension 2.1 true randombookmark@pikadudeno1.com
Referer Control extension 1.31 true {cde47992-8aa7-4206-9e98-680a2d20f798}
RSSPreview extension 3.17 true {7799824a-30fe-4c67-8b3e-7094ea203c94}
Sidebery extension 4.10.0 true {3c078156-979c-498b-8990-85f7987dd929}
SingleFileZ extension 1.0.65 true {e4db92bc-3213-493d-bd9e-5ff2afc72da6}
Snap Links extension 3.1.11 true snaplinks@snaplinks.mozdev.org
Stylus extension 1.5.21 true {7a7a4a92-a2a0-41d1-9fd7-1e92480d612d}
Tab Reloader (page auto refresh) extension 0.3.7 true jid0-bnmfwWw2w2w4e4edvcdDbnMhdVg@jetpack
Tab Session Manager extension 6.11.1 true Tab-Session-Manager@sienori
uBlock Origin extension 1.42.0 true uBlock0@raymondhill.net
uMatrix extension 1.4.4 true uMatrix@raymondhill.net
Update Scanner extension 4.4.0 true {c07d1a49-9894-49ff-a594-38960ede8fb9}
Video DownloadHelper extension 7.6.0 true {b9db16a4-6edc-47ec-a1f4-b86292ed211d}
Vimium C – All by Keyboard extension 1.97.0 true vimium-c@gdh1995.cn
Weather extension 5.0.9 true {a79a9c4c-9c3f-4bf4-9e58-6574cc0b7ecb}
Wikipedia (en) extension 1.1 true wikipedia@search.mozilla.org
YouTube High Definition extension 85.0.0 true {7b1bf0b6-a1b9-42b0-b75d-252036438bdc}
Audio Equalizer extension 0.1.6 false {63d150c4-394c-4275-bc32-c464e76a891c}
auto-resume downloads extension 1.0.3 false {07a7e965-fa95-4c07-bc5e-b53930b002bb}
Autofill extension 10.3.2 false {143f479b-4cb2-4d8c-8c31-ae8653bc6054}
Certainly Something (Certificate Viewer) extension 1.2.3 false a2fff151f5ad0ef63cbd7e454e8907c1fa9cc32008f489178775570374f408a7@pokeinthe.io
ColorfulTabs extension 34.8 false {0545b830-f0aa-4d7e-8820-50a4629a56fe}
Cookie Quick Manager extension 0.5rc2 false {60f82f00-9ad5-4de5-b31c-b16a47c51558}
Dark New Tab extension 0.1.2 false {2fc113fc-f01e-427a-8c4a-07b8b2d92f26}
Dictionary Anywhere extension 1.1.0 false {e90f5de4-8510-4515-9f67-3b6654e1e8c2}
Disconnect extension 20.3.1.1 false 2.0@disconnect.me
DownThemAll! extension 4.3.1 false {DDC359D1-844A-42a7-9AA1-88A850A938A8}
Easy to RSS extension 0.2.0 false {45909d54-3dd5-4298-8bb0-8a8d27a333ff}
floccus bookmarks sync extension 4.12.0 false floccus@handmadeideas.org
Hexconverter extension 1.7.0 false {e593c8ed-ae74-4039-af09-dfe4ad243adb}
JavaScript Toggle On and Off extension 0.2.4 false {479f0278-2c34-4365-b9f0-1d328d0f0a40}
Kee – Password Manager extension 3.9.5 false keefox@chris.tomlinson
MetaMask extension 10.11.3 false webextension@metamask.io
Midnight Lizard extension 10.7.1 false {8fbc7259-8015-4172-9af1-20e1edfbbd3a}
Share Button for Facebook™ extension 63.0 false {d4e0dc9c-c356-438e-afbe-dca439f4399d}
SingleFile extension 1.19.35 false {531906d3-e22f-4a6c-a102-8057b88a1a63}
Tabliss extension 2.4.2 false extension@tabliss.io
Tabloc extension 0.8 false {60520222-6bbf-45dd-b547-3641ea9cd9cb}
TinEye Reverse Image Search extension 1.5.2 false tineye@ideeinc.com
Twitter to Nitter Redirect extension 1.0.4 false {806caba7-d957-45dd-a533-7cb334dc2a6c}
UnLazy extension 8.0.6.28 false unlazy-alpha1@eladkarako.com
User-Agent Switcher and Manager extension 0.4.7.1 false {a6c4a591-f1b2-4f03-b3ff-767e5bedf4e7}
Web Archives extension 3.1.0 false {d07ccf11-c0cd-4938-a265-2a4d6ad01189}
Work Offline extension 0.1.4 false {2936ba13-a63a-41cf-a4e5-79274a38379e}
Youtube Audio extension 0.0.2.5 false {580efa7d-66f9-474d-857a-8e2afc6b1181}

Palemoon

[TEST] Add to Search Bar 2.9 true add-to-searchbox@maltekraus.de
[TEST] Addon List Dumper (restartless) 0.2.1-signed.1-signed true addonListDumper@jetpack
[TEST] bug489729(Disable detach and tear off tab) 2.1.1-signed.1-signed true bug489729@alice0775
[TEST] Change Profile’s Window Icons To Aurora 1.1.0 true change-window-icon-aurora@makyen.foo
[TEST] Check4Change 1.9.8.3 true check4change-owner@mozdev.org
[TEST] ColorfulTabs 23.9.1-signed true {0545b830-f0aa-4d7e-8820-50a4629a56fe}
[TEST] CookieCuller 1.4.1-signed.1-signed true {99B98C2C-7274-45a3-A640-D9DF1A1C8460}
[TEST] CountdownClock 1.4.5.1-signed.1-signed true {19D3B002-1AD1-4a69-A5B3-AA98773DBB86}
[TEST] DictionarySearch 28.0.0.1-signed true {a0faa0a4-f1a7-4098-9a74-21efc3a92372}
[TEST] Disconnect 3.15.3.1-signed.1-signed true 2.0@disconnect.me
[TEST] DownThemAll! 3.0.8 true {DDC359D1-844A-42a7-9AA1-88A850A938A8}
[TEST] Foobar Controls 0.3.6.1-signed.1-signed true {F3281C6A-29E3-405D-BD66-614E70C0B6B9}
[TEST] Image-Show-Hide 0.2.8.1.1-signed.1-signed true {92A24891-BA14-4e89-9FFD-07FFBE4334EE}
[TEST] JS Switch 0.2.10.1-signed.1-signed true {88c7b321-2eb8-11da-8cd6-0800200c9a66}
[TEST] Norwell History Tools 3.1.0.2.1-signed.1-signed true norvel@history
[TEST] QuickNote 0.7.6 true {C0CB8BA3-6C1B-47e8-A6AB-1FAB889562D9}
[TEST] Random Bookmark From Folder 1.0.1.1-signed true randombookmark@pikadudeno1.com
[TEST] RefControl 0.8.17.1-signed.1-signed true {455D905A-D37C-4643-A9E2-F6FEFAA0424A}
[TEST] ReminderFox 2.1.6.3 true {ada4b710-8346-4b82-8199-5de2b400a6ae}
[TEST] Update Scanner 3.3.1 true {c07d1a49-9894-49ff-a594-38960ede8fb9}
[TEST] VimFx 0.5.10.1-signed true VimFx@akhodakivskiy.github.com
[TEST] Work Offline 2.2 true {761a54f1-8ccf-4112-9e48-dbf72adf6244}
Add Bookmark Helper 1.0.10 true abh2me@Off.JustOff
Advanced Night Mode 1.0.13 true AdvancedNightMode@Off.JustOff
Age Unlimiter for YouTube 1.0.2 true ageless-yt-me@Off.JustOff
CipherFox 4.2.0 true cipherfox@mkfly
Classic Add-ons Archive 2.0.3 true ca-archive@Off.JustOff
Context Search X 0.4.6.26 true contextsearch2@lwz.addons.mozilla.org
Cookie Masters 3.2.0 true {a04a71f3-ce74-4134-8f86-fae693b19e44}
Crush Those Cookies 1.4.0 true crush-those-cookies@wsdfhjxc
Dismiss The Overlay 1.0.7 true behind-the-overlay-me@Off.JustOff
Expose Noisy Tabs 1.1.1 true expose-noisy-tabs@wsdfhjxc
Greasemonkey for Pale Moon 3.31.4 true greasemonkeyforpm@janekptacijarabaci
Greedy Cache 1.2.3 true greedycache@Off.JustOff
Home Styler 2.0.0 true homestyle@lootyhoof-pm
I don’t care about cookies 3.3.1 true jid1-KKzOGWgsW3Ao4Q@jetpack
JSView Revive 2.1.8 true {55e5dab6-f1cc-11e6-8a72-4981b17b32b7}
Moon Tester Tool 2.1.4 true moonttool@Off.JustOff
MozArchiver 2.0.1 true mozarchiver@lootyhoof-pm
NoScript 5.0.6 true {73a6fe31-595d-460b-a920-fcc0f8843232}
NoSquint 2.2.2 true nosquint@me.ebonjaeger.com
Open With 6.8.6 true openwith@darktrojan.net
Pale Moon Locale Switcher 3.1 true pm-localeswitch@palemoon.org
Reader View 2.2.0 true {1111dd1e-dd02-4c30-956f-f23c44dfea8e}
Snap Links Plus 2.4.3 true snaplinks@snaplinks.mozdev.org
Speed Start 2.1.6 true SStart@Off.JustOff
Stylem 2.2.6 true {503a85e3-84c9-40e5-b98e-98e62085837f}
Tab Mix Plus 0.5.8.1 true {dc572301-7619-498c-a57d-39143191b318}
uBlock Origin 1.16.4.30 true uBlock0@raymondhill.net
uMatrix 1.0.0 true uMatrix@raymondhill.net
View Source In Tab 1.0.3 true vstab@Off.JustOff
[TEST] Random Agent Spoofer 0.9.5.5 false jid1-AVgCeF1zoVzMjA@jetpack
[TEST] Zoom Page 15.8 false zoompage@DW-dev
Auto-Sort Bookmarks 2.10.12 false sortbookmarks@bouanto
BarTab Tycho 4.0 false bartab@infernozeus
BetterPrivacy 1.77 false {d40f5e7b-d2cf-4856-b441-cc613eeffbe3}
Color My Tabs 2.2.0 false color-my-tabs@wsdfhjxc
Complete YouTube Saver 5.7.36.1 false {AF445D67-154C-4c69-A17B-7F392BCC36A3}
Flashblock 1.5.20 false {3d7eb24f-2740-49df-8937-200b1cc08f8a}
Forecastfox (fix version) 2.4.8 false forecastfox@s3_fix_version
HTTPS Everywhere 5.2.21 false https-everywhere@eff.org
Internote 3.0.2.1-signed.1-signed false {e3631030-7c02-11da-a72b-0800200c9a66}
Mozilla Archive Format 5.2.1 false {7f57cf46-4467-4c2d-adfa-0cba7c507e54}
NoteStruck 1.0.4 false notestruck@franklindm
PHP Developer Toolbar 3.0.5.1-signed.1-signed false php_dev_bar@php_dev_bar.org
Popup Dictionaries With Audio 3.0.0 false {efb0aee9-a019-4341-bbeb-11e1630492f3}
Prevent Tab Overflow 7.2 false noverflow@sdrocking.com
Reasy 0.0.14.1-signed.1-signed false {fcff419f-5bfb-40cd-b52c-8f55dc2d0511}
RequestPolicy 0.5.28.1-signed.1-signed false requestpolicy@requestpolicy.com
RightBar 0.5.1-signed.1-signed false rightbar@realmtech.net
Save All Images 1.0.7 false save-images-me@Off.JustOff
Translate This Page, Text, or Link 2.1.0 false {8701e193-7b0a-4871-b1f8-8f89857c46a1}
User Agent Switcher 0.7.3.1-signed.1-signed false {e968fc70-8f95-4ab9-9e79-304de2a71ee1}
YouTube Video Player Pop Out 49.0 false {00f7ab9f-62f4-4145-b2f9-38d579d639f6}
ηMatrix 4.4.9 false eMatrix@vannilla.org

Auto