Commit Graph

77 Commits (b48090c23a79b6acb90c9c61048dc3bce15dddbc)

Author SHA1 Message Date
igosad b48090c23a
Add public instance: search.whoogle.tech (#269) 3 years ago
Ben Busby 3312072cc1 Add new public instance to readme
See https://whooglesearch.net/
3 years ago
Ben Busby 7b9ee37beb Allow defining initial config state w/ env vars
This introduces a set of environment variables that can be used for
defining initial config state, to expedite the process of
destroying/relaunching instances quickly with the same settings every
time.

Closes #228

Closes #195
3 years ago
Shimul 8a10efaa01 Allow setting environment variables in whoogle.env (#237)
This allows the user to enable their preferred settings in a variety of
ways, depending on their deployment preference. Values added to
whoogle.env can be enabled using WHOOGLE_DOTENV=1, in which case all
values in the env var file will overwrite defaults or user provided
settings.

Co-authored-by: Ben Busby <benbusby@protonmail.com>
3 years ago
Nico b2416394ff Add Garuda Linux public instance (#241)
Co-authored-by: Ben Busby <benbusby@protonmail.com>
3 years ago
Ben Busby 8f6d9cf3f5 Remove public instance from readme
I've received multiple reports that the Whoogle instance hosted at 
whoogle.tormentasolar.win is spam, so it has been removed from the
readme.
3 years ago
fredster33 ad0b48b034 Reformat public instance links in readme (#224)
Co-authored-by: Ben Busby <benbusby@protonmail.com>
3 years ago
FireMasterK 6f46facf9e Add new public instances (#223) 3 years ago
Ben Busby 0e2757fc07 Update heroku quick deploy branch, env vars in readme
The Heroku quick deploy branch has been changed from heroku-app to
heroku-app-beta, since a lot of users want to use features from develop
in their heroku instances.

The environment variables in the readme were updated to include the
reddit redirect var.
3 years ago
Nico 1d612c68a4 Add Arch Linux installation instructions to readme (#217) 3 years ago
Ben Busby 3ed0cf02bf List public instances in readme
Note: future public instances should be added with a PR
3 years ago
Ben Busby 6600d8580c Add ability to redirect reddit.com to libredd.it (#180)
* Adds the ability to redirect reddit.com to libredd.it using the existing
 "site alts" config setting.

This adds the WHOOGLE_ALT_RD environment variable for optionally
redirecting reddit links to libreddit
(https://github.com/spikecodes/libreddit).

* Include libreddit in home page site alt note
3 years ago
Ben Busby fad937fe08
Update ARM instructions for docker 3 years ago
Ben Busby d4a4a03de1
Add pep8 workflow badge to readme 4 years ago
Spike dad80ff8fb
Update repl.it info in readme (#157)
Repl.it has deprecated the anonymous experience so I have removed the part of the README stating that users can host on Repl.it without an account. -- @spikecodes
4 years ago
Ben Busby 6c429e6dd1
Allow setting site alts using environment vars (#155)
* Add ability to configure site alts w/ env vars

Site alternatives (i.e. twitter.com -> nitter.net) can now be configured
using environment variables:

WHOOGLE_ALT_TW='nitter.net' # twitter alt
WHOOGLE_ALT_YT='invidio.us' # youtube alt
WHOOGLE_ALT_IG='bibliogram.art/u' # instagram alt

Updated testing to confirm results have been modified.

* Add site alt vars to docker settings and readme
4 years ago
Ben Busby 54109874fb
Move screenshots/branding to separate docs folder 4 years ago
Ben Busby a97e837b09 Default to disabled environment vars, update readme
Environment variables should by default be disabled, since they are
optional and need further configuration by the user before enabling.

Readme was updated to reflect this approach, as well as moving the
documentation for the variables a bit lower and properly linking to them
in other areas of the readme.
4 years ago
Paolo Basso 4447cb682a
Document environment variables (#143)
Adds documentation for all available envirnrment variables to the README

Co-authored-by: Ben Busby <benbusby@protonmail.com>
4 years ago
Ben Busby 0ef098069e
Add tor and http/socks proxy support (#137)
* Add tor and http/socks proxy support

Allows users to enable/disable tor from the config menu, which will
forward all requests through Tor.

Also adds support for setting environment variables for alternative
proxy support. Setting the following variables will forward requests
through the proxy:
    - WHOOGLE_PROXY_USER (optional)
    - WHOOGLE_PROXY_PASS (optional)
    - WHOOGLE_PROXY_TYPE (required)
      - Can be "http", "socks4", or "socks5"
    - WHOOGLE_PROXY_LOC  (required)
      - Format: "<ip address>:<port>"

See #30

* Refactor acquire_tor_conn -> acquire_tor_identity

Also updated travis CI to set up tor

* Add check for Tor socket on init, improve Tor error handling

Initializing the app sends a heartbeat request to Tor to check for
availability, and updates the home page config options accordingly. This
heartbeat is sent on every request, to ensure Tor support can be
reconfigured without restarting the entire app.

If Tor support is enabled, and a subsequent request fails, then a new
TorError exception is raised, and the Tor feature is disabled until a
valid connection is restored.

The max attempts has been updated to 10, since 5 seemed a bit too low
for how quickly the attempts go by.

* Change send_tor_signal arg type, update function doc

send_tor_signal now accepts a stem.Signal arg (a bit cleaner tbh). Also
added the doc string for the "disable" attribute in TorError.

* Fix tor identity logic in Request.send

* Update proxy init, change proxyloc var name

Proxy is now only initialized if both type and location are specified,
as neither have a default fallback and both are required. I suppose the
type could fall back to http, but seems safer this way.

Also refactored proxyurl -> proxyloc for the runtime args in order to
match the Dockerfile args.

* Add tor/proxy support for Docker builds, fix opensearch/init

The Dockerfile is now updated to include support for Tor configuration,
with a working torrc file included in the repo.

An issue with opensearch was fixed as well, which was uncovered during
testing and was simple enough to fix here. Likewise, DDG bang gen was
updated to only ever happen if the file didn't exist previously, as
testing with the file being regenerated every time was tedious.

* Add missing "@" for socks proxy requests
4 years ago
Ben Busby 58a7868d25
Update README.md
Added DDG-style bang searches to feature list in the readme, removed Gitter chat badge
4 years ago
Ben Busby dfb1e81fa1 Added search input auto focus, updated README
The javascript controller has been updated to include a call to focus
the cursor on the search field. This previously had only been seen on
Firefox, and was assumed to be a weird FF-specific bug. Adding in a
timeout to allow elements to finish loading allows the field to be
focused as expected.

Also updated the README to include clarification for IP address
tracking.
4 years ago
Ben Busby a1894975af Merge remote-tracking branch 'origin/master' into develop 4 years ago
Dee-Jay Logozzo 481c5d1798
Added instructions for Android Firefox >=79.0.0 (#119)
* Added instructions for Android Firefox >=79.0.0

Long pressing on the search bar and selecting "Add search engine" no longer works as of Android Firefox 79.0.0

* Update README.md

* Corrected search strings to use backticks
4 years ago
Chad Smith 6ba5e8f165
fix pipx run command (#118)
Add the required `--spec` argument
4 years ago
Spike f4eca3711b
Allow for free deployment to Repl.it (#114)
* Update README.md with instructions for deploying via Repl.it

* Create .replit
4 years ago
Ben Busby 3d7456f37b
Added gitter badge 4 years ago
Ben Busby d859e46a6c
Update README.md
Added clarification for enforcing https
4 years ago
Ben Busby 77c4920e83
Update README.md 4 years ago
Ben Busby 21012f5265
Feature: autocomplete/search suggestions (#72)
Basic autocomplete/search suggestion functionality added

* Adds new GET and POST routes for '/autocomplete' that accept a string query and returns an array of suggestions

* Adds new autoscript.js file for handling queries on the main page and results view

* Updated requests class to include autocomplete method

* Updated opensearch template to handle search suggestions

* Added header template to allow for autocomplete on results view

* Updated readme to mention autocomplete feature
4 years ago
Ben Busby c9f99b3eb6
Fixed docker hub instructions 4 years ago
Ben Busby 516bc765b0
Update README.md
Fixed docker badge link
4 years ago
Ben Busby d2b60544c5
Update README.md
Added instructions for setting default search engine while using a reverse proxy
4 years ago
Ben Busby ea37044d67
Minor change to systemd setup
I thought this was addressed during the pull request, but I guess not?
4 years ago
thomcatdotrocks 46b6c66312
Added instructions for running with systemd (#45)
Co-authored-by: ThomCat <me@thomcat.rocks>
4 years ago
Ben Busby 11fa44eec1 Minor refactoring for clarification
Executable renamed to "run" to avoid confusion with pip installed script

Updated heroku deploy button to use the heroku-app branch, which by
default enforces HTTPS

Added instructions for enforcing HTTPS on various deployment options,
with note about how this isn't a required task.

Updated setup.py description to use improved app description
4 years ago
Paul Rothrock 0e9bbc737d
Add Alfred Instructions (#52) 4 years ago
Ben Busby 1ed6178e9a
Feature: https only -- adds option to enforce https on running instances (#48)
* Adding HTTPS enforcement

Command line runs of Whoogle Search through pip/pipx/etc will need the
`--https-only` flag appended to the run command.

Docker runs require the `use_https` build arg applied.

* Update README.md

Moved https-only note to top of docker run command, updated pip runner help output

* Dockerfile: removed HTTPS enforcement, updated PORT setting

Dockerfile no longer enforces an HTTPS connection, but still allows for
setting via a build arg. The Flask server port is now configurable as a
build arg as well, by setting a port number to "whoogle_port"

* Fixed incorrect port assignment
4 years ago
Ben Busby e3d002f6c1 Updated readme with more docker instructions 4 years ago
Jake Howard f700ed88e7
Swap out Flask's default web server for Waitress (#32)
* Ignore venv when building docker file

* Remove reference to 8888 port

It wasn't really used anywhere, and setting it to 5000 everywhere removes ambiguity, and makes things easier to track and reason about

* Use waitress rather than Flask's built in web server

It's not production grade

* Actually add waitress to requirements

Woops!
4 years ago
Ben Busby f7e69bded1
Minor punctuation fix 4 years ago
ygsk10 f36a63e3f0
Update README.md (#22)
* Update README.md

* Update README.md
4 years ago
Ben Busby 2fc48ced6a
Merge pull request #10 from DjLogozzo/master
Added Firefox Android instructions for primary search settings
4 years ago
Dee-Jay Logozzo 05f6ad2815
Added Firefox Android instructions for setting whoogle as primary search engine 4 years ago
mendel5 3a4a8ce95b
fix spelling: Whoole --> Whoogle 4 years ago
Ben Busby 3d38b80833
Small update to readme
Clarified the heroku app naming section
4 years ago
Ben Busby 1ae946eab7
Update README.md 4 years ago
Ben Busby 68da3cd4cd Updated readme with pip instructions, fixed travis badge 4 years ago
Ben Busby d1a268551e
Update README.md 4 years ago
Ben Busby d01f56ea03 Removed referrer from links, refacored routes
Added <meta name="referrer" content="no-referrer"> to all whoogle
templates

Refactored search route to use conditionally use either request.args or
request.form, depending on rest call (get vs post respectively)
4 years ago