├── .tool-versions ├── .github ├── renovate.json ├── FUNDING.yml └── dependabot.yml ├── bun.lockb ├── .web-ext-config.mjs ├── package.json ├── web-extensions ├── v3 │ ├── arch-wiki │ │ ├── manifest.json │ │ └── icons │ │ │ └── arch-w.svg │ ├── arch-aur │ │ ├── manifest.json │ │ └── icons │ │ │ └── arch-u.svg │ ├── arch-pkgs │ │ ├── manifest.json │ │ └── icons │ │ │ └── arch-p.svg │ ├── arch-man │ │ ├── manifest.json │ │ └── icons │ │ │ └── arch-m.svg │ ├── arch-bugs │ │ ├── manifest.json │ │ └── icons │ │ │ └── arch-b.svg │ ├── arch-security │ │ ├── manifest.json │ │ └── icons │ │ │ └── arch-s.svg │ ├── arch-pkgbuild │ │ ├── manifest.json │ │ └── icons │ │ │ └── arch-pkg.svg │ ├── arch-forum-a │ │ ├── manifest.json │ │ └── icons │ │ │ └── arch-fa.svg │ └── arch-forum-k │ │ ├── manifest.json │ │ └── icons │ │ └── arch-fk.svg └── v2 │ ├── arch-wiki │ ├── manifest.json │ └── icons │ │ └── arch.svg │ ├── arch-aur │ ├── manifest.json │ └── icons │ │ └── arch.svg │ ├── arch-pkgs │ ├── manifest.json │ └── icons │ │ └── arch.svg │ ├── arch-man │ ├── manifest.json │ └── icons │ │ └── arch.svg │ ├── arch-bugs │ ├── manifest.json │ └── icons │ │ └── arch.svg │ ├── arch-forum-a │ ├── manifest.json │ └── icons │ │ └── arch.svg │ └── arch-forum-k │ ├── manifest.json │ └── icons │ └── arch.svg ├── LICENSE ├── CHANGELOG.md ├── .gitignore ├── packages └── archlinux │ ├── .SRCINFO │ └── PKGBUILD └── README.md /.tool-versions: -------------------------------------------------------------------------------- 1 | bun 1.2.20 2 | nodejs 24.8.0 3 | -------------------------------------------------------------------------------- /.github/renovate.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": [ 3 | "config:base" 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /bun.lockb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/noraj/firefox-extension-arch-search/HEAD/bun.lockb -------------------------------------------------------------------------------- /.web-ext-config.mjs: -------------------------------------------------------------------------------- 1 | export default { 2 | verbose: false, 3 | build: { 4 | overwriteDest: true 5 | }, 6 | }; 7 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: noraj 4 | issuehunt: noraj 5 | ko_fi: noraj 6 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # To get started with Dependabot version updates, you'll need to specify which 2 | # package ecosystems to update and where the package manifests are located. 3 | # Please see the documentation for all configuration options: 4 | # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates 5 | 6 | version: 2 7 | updates: 8 | - package-ecosystem: "npm" # See documentation for possible values 9 | directory: "/" # Location of package manifests 10 | schedule: 11 | interval: "daily" 12 | labels: 13 | - "dependency::update" 14 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "firefox-extension-arch-search", 3 | "version": "2.0.1", 4 | "license": "MIT", 5 | "description": "A set of Web Extensions that adds ArchLinux (bug tracker, forum, packages, wiki, AUR) as a search engine to the Firefox browser.", 6 | "author": "noraj", 7 | "repository": { 8 | "type": "git", 9 | "url": "git+https://github.com/noraj/firefox-extension-arch-search.git" 10 | }, 11 | "bugs": { 12 | "url": "https://github.com/noraj/firefox-extension-arch-search/issues" 13 | }, 14 | "homepage": "https://github.com/noraj/firefox-extension-arch-search", 15 | "keywords": [ 16 | "webextensions", 17 | "firefox", 18 | "archlinux" 19 | ], 20 | "scripts": { 21 | "lint": "web-ext lint", 22 | "build": "web-ext build -a ./dist", 23 | "buildAll": "./build.sh", 24 | "run": "web-ext run" 25 | }, 26 | "devDependencies": { 27 | "web-ext": "9.2.0" 28 | }, 29 | "engines": { 30 | "node": ">=18" 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-wiki/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 3, 3 | "name": "ArchLinux Wiki Search", 4 | "short_name": "archlinux_search_wiki", 5 | "description": "Adds ArchLinux Wiki as a search engine.", 6 | "version": "1.0.4", 7 | "icons": { 8 | "16": "icons/arch-w.svg", 9 | "64": "icons/arch-w.svg", 10 | "256": "icons/arch-w.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux Wiki", 15 | "keyword": "alwiki", 16 | "favicon_url": "icons/arch-w.svg", 17 | "search_url": "https://wiki.archlinux.org/index.php?search={searchTerms}" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchWiki@archlinux.org", 23 | "strict_min_version": "109.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-aur/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 3, 3 | "name": "ArchLinux AUR Search", 4 | "short_name": "archlinux_search_aur", 5 | "description": "Adds ArchLinux AUR as a search engine.", 6 | "version": "1.0.5", 7 | "icons": { 8 | "16": "icons/arch-u.svg", 9 | "64": "icons/arch-u.svg", 10 | "256": "icons/arch-u.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux User Repository (AUR)", 15 | "keyword": "alaur", 16 | "favicon_url": "icons/arch-u.svg", 17 | "search_url": "https://aur.archlinux.org/packages?K={searchTerms}" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchAur@archlinux.org", 23 | "strict_min_version": "109.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-pkgs/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 3, 3 | "name": "ArchLinux Packages Search", 4 | "short_name": "archlinux_search_pkgs", 5 | "description": "Adds ArchLinux Packages as a search engine.", 6 | "version": "1.0.3", 7 | "icons": { 8 | "16": "icons/arch-p.svg", 9 | "64": "icons/arch-p.svg", 10 | "256": "icons/arch-p.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux Packages", 15 | "keyword": "alpkgs", 16 | "favicon_url": "icons/arch-p.svg", 17 | "search_url": "https://www.archlinux.org/packages/?q={searchTerms}" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchPkgs@archlinux.org", 23 | "strict_min_version": "109.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-man/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 3, 3 | "name": "ArchLinux manual pages Search", 4 | "short_name": "archlinux_search_man", 5 | "description": "Adds ArchLinux manual pages as a search engine.", 6 | "version": "1.0.4", 7 | "icons": { 8 | "16": "icons/arch-m.svg", 9 | "64": "icons/arch-m.svg", 10 | "256": "icons/arch-m.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux manual pages", 15 | "keyword": "alman", 16 | "favicon_url": "icons/arch-m.svg", 17 | "search_url": "https://man.archlinux.org/search?q={searchTerms}" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchMan@archlinux.org", 23 | "strict_min_version": "109.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-wiki/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 2, 3 | "name": "ArchLinux Wiki Search", 4 | "short_name": "archlinux_search_wiki", 5 | "description": "Adds ArchLinux Wiki as a search engine.", 6 | "version": "1.0.2", 7 | "icons": { 8 | "16": "icons/arch.svg", 9 | "64": "icons/arch.svg", 10 | "256": "icons/arch.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux Wiki", 15 | "keyword": "alwiki", 16 | "favicon_url": "https://wiki.archlinux.org/favicon.ico", 17 | "search_url": "https://wiki.archlinux.org/index.php?search={searchTerms}" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchWiki@archlinux.org", 23 | "strict_min_version": "55.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-aur/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 2, 3 | "name": "ArchLinux AUR Search", 4 | "short_name": "archlinux_search_aur", 5 | "description": "Adds ArchLinux AUR as a search engine.", 6 | "version": "1.0.3", 7 | "icons": { 8 | "16": "icons/arch.svg", 9 | "64": "icons/arch.svg", 10 | "256": "icons/arch.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux User Repository (AUR)", 15 | "keyword": "alaur", 16 | "favicon_url": "https://aur.archlinux.org/static/images/favicon.ico", 17 | "search_url": "https://aur.archlinux.org/packages?K={searchTerms}" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchAur@archlinux.org", 23 | "strict_min_version": "55.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-pkgs/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 2, 3 | "name": "ArchLinux Packages Search", 4 | "short_name": "archlinux_search_pkgs", 5 | "description": "Adds ArchLinux Packages as a search engine.", 6 | "version": "1.0.1", 7 | "icons": { 8 | "16": "icons/arch.svg", 9 | "64": "icons/arch.svg", 10 | "256": "icons/arch.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux Packages", 15 | "keyword": "alpkgs", 16 | "favicon_url": "https://www.archlinux.org/static/favicon.29302f683ff8.ico", 17 | "search_url": "https://www.archlinux.org/packages/?q={searchTerms}" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchPkgs@archlinux.org", 23 | "strict_min_version": "55.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-bugs/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 3, 3 | "name": "ArchLinux Bugtracker Search", 4 | "short_name": "archlinux_search_bugs", 5 | "description": "Adds ArchLinux Bugtracker as a search engine.", 6 | "version": "1.0.0", 7 | "icons": { 8 | "16": "icons/arch-b.svg", 9 | "64": "icons/arch-b.svg", 10 | "256": "icons/arch-b.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux Bugtracker", 15 | "keyword": "albugs", 16 | "favicon_url": "icons/arch-b.svg", 17 | "search_url": "https://gitlab.archlinux.org/archlinux/packaging/packages/{searchTerms}/-/issues" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchBugs@archlinux.org", 23 | "strict_min_version": "109.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-man/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 2, 3 | "name": "ArchLinux manual pages Search", 4 | "short_name": "archlinux_search_man", 5 | "description": "Adds ArchLinux manual pages as a search engine.", 6 | "version": "1.0.2", 7 | "icons": { 8 | "16": "icons/arch.svg", 9 | "64": "icons/arch.svg", 10 | "256": "icons/arch.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux manual pages", 15 | "keyword": "alman", 16 | "favicon_url": "https://man.archlinux.org/static/archlinux-common/favicon.ico", 17 | "search_url": "https://man.archlinux.org/search?q={searchTerms}" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchMan@archlinux.org", 23 | "strict_min_version": "55.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-security/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 3, 3 | "name": "ArchLinux Security Search", 4 | "short_name": "archlinux_search_sec", 5 | "description": "Adds a search engine to look for ArchLinux Security Advisories by package.", 6 | "version": "1.0.1", 7 | "icons": { 8 | "16": "icons/arch-s.svg", 9 | "64": "icons/arch-s.svg", 10 | "256": "icons/arch-s.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux Security Advisories", 15 | "keyword": "alsec", 16 | "favicon_url": "icons/arch-s.svg", 17 | "search_url": "https://security.archlinux.org/package/{searchTerms}" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchSec@archlinux.org", 23 | "strict_min_version": "109.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-bugs/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 2, 3 | "name": "ArchLinux Bugtracker Search", 4 | "short_name": "archlinux_search_bugs", 5 | "description": "Adds ArchLinux Bugtracker as a search engine.", 6 | "version": "1.0.0", 7 | "icons": { 8 | "16": "icons/arch.svg", 9 | "64": "icons/arch.svg", 10 | "256": "icons/arch.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux Bugtracker", 15 | "keyword": "albugs", 16 | "favicon_url": "https://gitlab.archlinux.org/uploads/-/system/appearance/favicon/1/lol3.png", 17 | "search_url": "https://gitlab.archlinux.org/archlinux/packaging/packages/{searchTerms}/-/issues" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchBugs@archlinux.org", 23 | "strict_min_version": "55.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-pkgbuild/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 3, 3 | "name": "ArchLinux PKGBUILD (source) Search", 4 | "short_name": "archlinux_search_pkgbuild", 5 | "description": "Adds ArchLinux PKGBUILD as a search engine.", 6 | "version": "1.0.0", 7 | "icons": { 8 | "16": "icons/arch-pkg.svg", 9 | "64": "icons/arch-pkg.svg", 10 | "256": "icons/arch-pkg.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux PKGBUILD", 15 | "keyword": "alsrc", 16 | "favicon_url": "icons/arch-pkg.svg", 17 | "search_url": "https://gitlab.archlinux.org/archlinux/packaging/packages/{searchTerms}/-/blob/main/PKGBUILD?ref_type=heads" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchSrc@archlinux.org", 23 | "strict_min_version": "109.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-pkgearch" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-forum-a/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 3, 3 | "name": "ArchLinux Forum (by author) Search", 4 | "short_name": "archlinux_search_forum_a", 5 | "description": "Adds ArchLinux Forum (by author) as a search engine.", 6 | "version": "1.0.3", 7 | "icons": { 8 | "16": "icons/arch-fa.svg", 9 | "64": "icons/arch-fa.svg", 10 | "256": "icons/arch-fa.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux Forum (author)", 15 | "keyword": "alforuma", 16 | "favicon_url": "icons/arch-fa.svg", 17 | "search_url": "https://bbs.archlinux.org/search.php?author={searchTerms}&search_in=0&sort_by=0&sort_dir=DESC&show_as=posts&action=search" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchForumA@archlinux.org", 23 | "strict_min_version": "109.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-forum-k/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 3, 3 | "name": "ArchLinux Forum (by keywords) Search", 4 | "short_name": "archlinux_search_forum_k", 5 | "description": "Adds ArchLinux Forum (by keywords) as a search engine.", 6 | "version": "1.0.3", 7 | "icons": { 8 | "16": "icons/arch-fk.svg", 9 | "64": "icons/arch-fk.svg", 10 | "256": "icons/arch-fk.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux Forum (keywords)", 15 | "keyword": "alforumk", 16 | "favicon_url": "icons/arch-fk.svg", 17 | "search_url": "https://bbs.archlinux.org/search.php?keywords={searchTerms}&search_in=0&sort_by=0&sort_dir=DESC&show_as=topics&action=search" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchForumK@archlinux.org", 23 | "strict_min_version": "109.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-forum-a/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 2, 3 | "name": "ArchLinux Forum (by author) Search", 4 | "short_name": "archlinux_search_forum_a", 5 | "description": "Adds ArchLinux Forum (by author) as a search engine.", 6 | "version": "1.0.1", 7 | "icons": { 8 | "16": "icons/arch.svg", 9 | "64": "icons/arch.svg", 10 | "256": "icons/arch.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux Forum (author)", 15 | "keyword": "alforuma", 16 | "favicon_url": "https://bbs.archlinux.org/style/ArchLinux/favicon.ico", 17 | "search_url": "https://bbs.archlinux.org/search.php?author={searchTerms}&search_in=0&sort_by=0&sort_dir=DESC&show_as=posts&action=search" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchForumA@archlinux.org", 23 | "strict_min_version": "55.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-forum-k/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 2, 3 | "name": "ArchLinux Forum (by keywords) Search", 4 | "short_name": "archlinux_search_forum_k", 5 | "description": "Adds ArchLinux Forum (by keywords) as a search engine.", 6 | "version": "1.0.1", 7 | "icons": { 8 | "16": "icons/arch.svg", 9 | "64": "icons/arch.svg", 10 | "256": "icons/arch.svg" 11 | }, 12 | "chrome_settings_overrides": { 13 | "search_provider": { 14 | "name": "ArchLinux Forum (keywords)", 15 | "keyword": "alforumk", 16 | "favicon_url": "https://bbs.archlinux.org/style/ArchLinux/favicon.ico", 17 | "search_url": "https://bbs.archlinux.org/search.php?keywords={searchTerms}&search_in=0&sort_by=0&sort_dir=DESC&show_as=topics&action=search" 18 | } 19 | }, 20 | "browser_specific_settings": { 21 | "gecko": { 22 | "id": "ArchForumK@archlinux.org", 23 | "strict_min_version": "55.0" 24 | }, 25 | "gecko_android": { 26 | "strict_min_version": "121.0" 27 | } 28 | }, 29 | "author": "noraj", 30 | "homepage_url": "https://github.com/noraj/firefox-extension-arch-search" 31 | } 32 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020-2024 noraj (Alexandre ZANNI) 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## [2.0.1] 4 | 5 | - Better description for ArchLinux Security Search & resubmission on AMO 6 | 7 | ## [2.0.0] 8 | 9 | - Firefox for Android support [#35](https://github.com/noraj/firefox-extension-arch-search/pull/35) (thanks @sangsatori) 10 | - Remove extensions related to the old bug tracker and introduce an extension for the new one 11 | - New extension to search for Security Advisories 12 | - New extension to search for PKGBUILD files 13 | 14 | ## [1.0.5] 15 | 16 | - Migration to Manifest V3 [#19](https://github.com/noraj/firefox-extension-arch-search/issues/19) 17 | - Icons with different colors [#17](https://github.com/noraj/firefox-extension-arch-search/issues/17) 18 | 19 | ## [1.0.4] 20 | 21 | - Fixed AUR search URL [#15](https://github.com/noraj/firefox-extension-arch-search/pull/15) (thanks @rharish101) 22 | 23 | ## [1.0.3] 24 | 25 | - Fixed Arch Wiki search URL [#11](https://github.com/noraj/firefox-extension-arch-search/pull/11) (thanks @rharish101) 26 | 27 | ## [1.0.2] 28 | 29 | - Add search for new manual pages service ([#6](https://github.com/noraj/firefox-extension-arch-search/issues/6)) 30 | 31 | ## [1.0.1] 32 | 33 | - Add `author` & `homepage_url` to extensions' manifest 34 | 35 | ## [1.0.0] 36 | 37 | - Initial version 38 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-wiki/icons/arch-w.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-man/icons/arch-m.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-pkgs/icons/arch-p.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-aur/icons/arch-u.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-bugs/icons/arch-b.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-forum-a/icons/arch-fa.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-forum-k/icons/arch-fk.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-pkgbuild/icons/arch-pkg.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /web-extensions/v3/arch-security/icons/arch-s.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-aur/icons/arch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-man/icons/arch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-bugs/icons/arch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-forum-a/icons/arch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-forum-k/icons/arch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-pkgs/icons/arch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /web-extensions/v2/arch-wiki/icons/arch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | 9 | # Diagnostic reports (https://nodejs.org/api/report.html) 10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 11 | 12 | # Runtime data 13 | pids 14 | *.pid 15 | *.seed 16 | *.pid.lock 17 | 18 | # Directory for instrumented libs generated by jscoverage/JSCover 19 | lib-cov 20 | 21 | # Coverage directory used by tools like istanbul 22 | coverage 23 | *.lcov 24 | 25 | # nyc test coverage 26 | .nyc_output 27 | 28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 29 | .grunt 30 | 31 | # Bower dependency directory (https://bower.io/) 32 | bower_components 33 | 34 | # node-waf configuration 35 | .lock-wscript 36 | 37 | # Compiled binary addons (https://nodejs.org/api/addons.html) 38 | build/Release 39 | 40 | # Dependency directories 41 | node_modules/ 42 | jspm_packages/ 43 | 44 | # TypeScript v1 declaration files 45 | typings/ 46 | 47 | # TypeScript cache 48 | *.tsbuildinfo 49 | 50 | # Optional npm cache directory 51 | .npm 52 | 53 | # Optional eslint cache 54 | .eslintcache 55 | 56 | # Microbundle cache 57 | .rpt2_cache/ 58 | .rts2_cache_cjs/ 59 | .rts2_cache_es/ 60 | .rts2_cache_umd/ 61 | 62 | # Optional REPL history 63 | .node_repl_history 64 | 65 | # Output of 'npm pack' 66 | *.tgz 67 | 68 | # Yarn Integrity file 69 | .yarn-integrity 70 | 71 | # dotenv environment variables file 72 | .env 73 | .env.test 74 | 75 | # parcel-bundler cache (https://parceljs.org/) 76 | .cache 77 | 78 | # Next.js build output 79 | .next 80 | 81 | # Nuxt.js build / generate output 82 | .nuxt 83 | dist 84 | 85 | # Gatsby files 86 | .cache/ 87 | # Comment in the public line in if your project uses Gatsby and *not* Next.js 88 | # https://nextjs.org/blog/next-9-1#public-directory-support 89 | # public 90 | 91 | # vuepress build output 92 | .vuepress/dist 93 | 94 | # Serverless directories 95 | .serverless/ 96 | 97 | # FuseBox cache 98 | .fusebox/ 99 | 100 | # DynamoDB Local files 101 | .dynamodb/ 102 | 103 | # TernJS port file 104 | .tern-port 105 | 106 | # makepkg 107 | packages/archlinux/src/ 108 | packages/archlinux/pkg/ 109 | *.xpi 110 | *.tar.zst 111 | packages/archlinux/LICENSE 112 | -------------------------------------------------------------------------------- /packages/archlinux/.SRCINFO: -------------------------------------------------------------------------------- 1 | pkgbase = firefox-extension-arch-search 2 | pkgdesc = A set of Web Extensions that adds ArchLinux (bug tracker, forum, packages, wiki, AUR) as a search engine to the Firefox browser. 3 | pkgver = 2.0.0 4 | pkgrel = 4 5 | url = https://github.com/noraj/firefox-extension-arch-search 6 | arch = any 7 | groups = firefox-addons 8 | license = MIT 9 | depends = firefox 10 | replaces = arch-firefox3-search 11 | replaces = arch-firefox-search 12 | noextract = archlinux_aur_search-1.0.5.xpi 13 | noextract = archlinux_bugtracker_search-1.0.0.xpi 14 | noextract = archlinux_forum_by_author_search-1.0.3.xpi 15 | noextract = archlinux_forum_by_keywords_search-1.0.3.xpi 16 | noextract = archlinux_packages_search-1.0.3.xpi 17 | noextract = archlinux_wiki_search-1.0.4.xpi 18 | noextract = archlinux_manual_pages_search-1.0.4.xpi 19 | noextract = archlinux_security_search-1.0.0.xpi 20 | noextract = archlinux_pkgbuild_search-1.0.0.xpi 21 | source = https://addons.mozilla.org/firefox/downloads/file/4337418/archlinux_aur_search-1.0.5.xpi 22 | source = https://addons.mozilla.org/firefox/downloads/file/4338127/archlinux_bugtracker_search-1.0.0.xpi 23 | source = https://addons.mozilla.org/firefox/downloads/file/4337411/archlinux_forum_by_author_search-1.0.3.xpi 24 | source = https://addons.mozilla.org/firefox/downloads/file/4337414/archlinux_forum_by_keywords_search-1.0.3.xpi 25 | source = https://addons.mozilla.org/firefox/downloads/file/4337415/archlinux_packages_search-1.0.3.xpi 26 | source = https://addons.mozilla.org/firefox/downloads/file/4337417/archlinux_wiki_search-1.0.4.xpi 27 | source = https://addons.mozilla.org/firefox/downloads/file/4337416/archlinux_manual_pages_search-1.0.4.xpi 28 | source = https://addons.mozilla.org/firefox/downloads/file/4337406/archlinux_security_search-1.0.0.xpi 29 | source = https://addons.mozilla.org/firefox/downloads/file/4337419/archlinux_pkgbuild_search-1.0.0.xpi 30 | source = https://raw.githubusercontent.com/noraj/firefox-extension-arch-search/master/LICENSE 31 | b2sums = 1a0010fefea0986b0ded2c483e56244418b000712d84c0d252a00f35622905f4e6dd67d3037e183012d03b1233523d613cf0d8c525a3668058f92c7769409c42 32 | b2sums = 7e9c6978dacf709cf8dc0be044492ef276c1835ed30db5aa64fbc35f3a45608885a6662fc4048985ae74e812f94b202d543dcdfcbb431454c2898f3337e98c22 33 | b2sums = 883c3569f1e1ad12cd3d1109fadde148fd8040126dcd6bff4aeec027c246f3b4d5e7d8552934eb7cc29b357152699606df3d4656d86fae0722054b13914e46bb 34 | b2sums = 2980f6e853a2d30236bed266da9a942f41b6393c1aa14b5bab38e79d26f4e741bd536331476b364e98f333a83e04f364554e141e1eab63ee0c1bf69615c9aa2a 35 | b2sums = ae8574a0899510a7d6f338a24f0ca96456fd3ff3e14a1c1c1e5a7d4a225df1dcb23329ce71c5d49d3b4374f7c595ba390b5556d3bb83d3a13147d38103473e17 36 | b2sums = e498b4cc098ef64f4d1c2b51b9988eecded6e7695db17b5edd483098bae132f55eae437d7ee23520a6f5b1d80ea1c5fced5bff6a13c2b17a89add242447a22d6 37 | b2sums = e422cde6ee9d0ff10866713a5ebc5219dbafc9e0381d7aa6f185ed14a2758c53e56a020502c2b8badc1eb2e8844ee73c74f0a8a2f41588638be53077677f53cc 38 | b2sums = ef1683e513719d083a2478d1418e10ddc35364e799032ea3a027b40c50c39b51ffbcf9aa25dac935b14bf4dc5d45ee29cbc8b924c16cbbcf3de0e7c3c5738a43 39 | b2sums = b82d5f510ecdd9eb3ec75ae8f73c4a3e06da80e31f6f972a192534ebebf029b1be4f260cd907296274d184a9ac00162f2ff3c0707471e443ce225b93d8b2e218 40 | b2sums = 34a88b0db4073f62e676a5f00808deec333e71090799ef011c8d75904e865d566539ba7a495fd2738bf8e34429240b31648664cdd37fe28feb2f298ee3bb5f6e 41 | 42 | pkgname = firefox-extension-arch-search 43 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ArchLinux Search 2 | 3 | ![AUR version](https://img.shields.io/aur/version/firefox-extension-arch-search) 4 | ![GitHub tag (latest SemVer)](https://img.shields.io/github/v/tag/noraj/firefox-extension-arch-search) 5 | ![License](https://img.shields.io/github/license/noraj/firefox-extension-arch-search) 6 | 7 | ![image](https://user-images.githubusercontent.com/16578570/95793622-4edc3d80-0ce6-11eb-8122-a48bca577fb1.png) 8 | 9 | A set of Web Extensions that adds ArchLinux (bug tracker, forum, packages, wiki, AUR, man pages, security advisories, PKGBUILD) as 10 | a search engine to the Firefox browser (using the [chrome_settings_overrides](https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/chrome_settings_overrides) manifest key). 11 | Submits the query via GET request for compatibility with [Multi-Account Containers](https://addons.mozilla.org/en-US/firefox/addon/multi-account-containers/). 12 | 13 | Available search engines: 14 | 15 | name | shortcut | Install 16 | ---------------------------------------|------------|----------- 17 | ArchLinux Packages Search | `alpkgs` | [AMO][arch-pkgs] 18 | ArchLinux Wiki Search | `alwiki` | [AMO][arch-wiki] 19 | ArchLinux User Repository (AUR) Search | `alaur` | [AMO][arch-aur] 20 | ArchLinux Bugtracker Search | `albugs` | [AMO][arch-bugs] 21 | ArchLinux Forum (by author) Search | `alforuma` | [AMO][arch-forum-a] 22 | ArchLinux Forum (by keywords) Search | `alforumk` | [AMO][arch-forum-k] 23 | ArchLinux Manual Page Search | `alman` | [AMO][arch-man] 24 | ArchLinux Security Search | `alsec` | [AMO][arch-security] 25 | ArchLinux PKGBUILD (source) Search | `alsrc` | [AMO][arch-pkgbuild] 26 | 27 | ## Install 28 | 29 | - On ArchLinux: `pikaur -S firefox-extension-arch-search` 30 | - On any other OS: install the extensions manually via AMO (**A**ddons **MO**zilla) following the links above 31 | 32 | ## Develop Locally 33 | 34 | * Clone the repo 35 | * Install tools: 36 | * [Bun](https://bun.sh/) via [asdf](https://asdf-vm.com/) 37 | * Install dependencies: 38 | * `bun i` 39 | * Lint (check for manifest syntax errors) 40 | * `bun run --bun lint -- -s web-extensions/v3/` 41 | * Run add-on in isolated Firefox instance using [web-ext](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Getting_started_with_web-ext) (open the [Browser Toolbox](https://developer.mozilla.org/en-US/docs/Tools/Browser_Toolbox) for console logging): 42 | * `bun run run -- -s web-extensions/v3/` 43 | * Package for distribution: 44 | * One extension: `bun run build -- -s web-extensions/v3/` 45 | * All extensions: `bun run buildAll` 46 | 47 | ## FAQ 48 | 49 | - [Why is there one extension per search engine?](https://stackoverflow.com/questions/64304959/is-it-possible-to-add-multiple-search-engines-in-the-same-firefox-web-extension) 50 | - After the installation, I still don't see the new search enines. Where are there? 51 | - Disable/Enable the extensions, this will reload them and they'll appear. 52 | - It's possible to add the search engines by clicking the plus button on the search bar, so why an extension? 53 | - It's way quicker to install the extension rather than manually adding the search engines. An extension also allows automation. 54 | - The bug tracker & the forum use advanced search with several parameters so it's not possible to add them manually via the search bar, an extension is mandatory. 55 | 56 | [amo]:(https://addons.mozilla.org/) 57 | [arch-aur]:https://addons.mozilla.org/en-US/firefox/addon/archlinux-aur-search/ 58 | [arch-bugs]:https://addons.mozilla.org/en-US/firefox/addon/archlinux-bugtracker-search/ 59 | [arch-forum-a]:https://addons.mozilla.org/en-US/firefox/addon/arch-forum-by-author-search/ 60 | [arch-forum-k]:https://addons.mozilla.org/en-US/firefox/addon/arch-forum-by-keywords-search/ 61 | [arch-pkgs]:https://addons.mozilla.org/en-US/firefox/addon/archlinux-packages-search/ 62 | [arch-wiki]:https://addons.mozilla.org/en-US/firefox/addon/archlinux-wiki-search/ 63 | [arch-man]:https://addons.mozilla.org/en-US/firefox/addon/archlinux-manual-pages-search/ 64 | [arch-security]:https://addons.mozilla.org/en-US/firefox/addon/archlinux-security-search/ 65 | [arch-pkgbuild]:https://addons.mozilla.org/en-US/firefox/addon/archlinux-pkgbuild-search/ 66 | -------------------------------------------------------------------------------- /packages/archlinux/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: noraj