fuck_facebook 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.ruby-version +1 -1
- data/CONTRIBUTING.md +23 -0
- data/Dockerfile +15 -0
- data/Gemfile.lock +7 -7
- data/README.md +43 -0
- data/lib/fuck_facebook/version.rb +1 -1
- data/src/config.rb +3 -0
- data/src/facebook_connection.rb +2 -0
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9f15615d0c24e530547c2a40e4509d434bc25578dde17737a5b8d8ef5fe2e68f
|
4
|
+
data.tar.gz: e3c8a9d379b9df92d0d986bfb1dba35846779d32d4cf1bbf16ae39d1f778fae4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cffa79b7c7b58717a8507ba129668db846b40e6682621527b7799665d4fa74a5032a27ef471da20659ee01cd57662e82d85f76aff5b01e43a547d638e0c70374
|
7
|
+
data.tar.gz: 4acc110f1bb5e7115b28a429594a5fc8459f402fcffe88391a7189687791d677e857117049227d656d977c00b5daac88b4bded2780b1044b81fdce8cc603f0e6
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.0.
|
1
|
+
3.0.2
|
data/CONTRIBUTING.md
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
# Developer Guide
|
2
|
+
|
3
|
+
## Pushing a new version of the gem
|
4
|
+
|
5
|
+
**Note:** You must have been granted access to deploy new versions of the `fuck_facebook` gem
|
6
|
+
|
7
|
+
* Bump the version in `lib/fuck_facebook/version.rb`
|
8
|
+
* Build the gem with `gem build fuck_facebook.gemspec`
|
9
|
+
* Push the gem with `gem push fuck_facebook-VERSION.gem` replacing `VERSION` with the new version number
|
10
|
+
|
11
|
+
## Pushing a new version of the Docker image
|
12
|
+
|
13
|
+
**Note:** You must have been granted access to deploy new versions of the `fuck_facebook` Docker image
|
14
|
+
|
15
|
+
* Build the image:
|
16
|
+
|
17
|
+
```
|
18
|
+
docker build . -t keeyan/fuck_facebook:VERSION --build-arg version=VERSION
|
19
|
+
```
|
20
|
+
|
21
|
+
Replace `VERSION` with the version number
|
22
|
+
|
23
|
+
* Push the image with `docker push keeyan/fuck_facebook:VERSION` replacing `VERSION` with the version number
|
data/Dockerfile
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
FROM ruby:3.0.2-bullseye
|
2
|
+
|
3
|
+
RUN apt-get update && apt-get install -y chromium-driver
|
4
|
+
|
5
|
+
RUN useradd --create-home --shell /bin/bash fuckfacebook
|
6
|
+
|
7
|
+
USER fuckfacebook
|
8
|
+
WORKDIR /home/fuckfacebook
|
9
|
+
|
10
|
+
RUN mkdir -p /home/fuckfacebook/.local/share/fuck-facebook
|
11
|
+
VOLUME /home/fuckfacebook/.local/share/fuck-facebook
|
12
|
+
|
13
|
+
ARG version
|
14
|
+
COPY fuck_facebook-$version.gem .
|
15
|
+
RUN gem install fuck_facebook-$version.gem
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
fuck_facebook (0.1
|
4
|
+
fuck_facebook (0.2.1)
|
5
5
|
activesupport (~> 6.1)
|
6
6
|
highline (~> 2.0)
|
7
7
|
mail (~> 2.7)
|
@@ -10,7 +10,7 @@ PATH
|
|
10
10
|
GEM
|
11
11
|
remote: https://rubygems.org/
|
12
12
|
specs:
|
13
|
-
activesupport (6.1.4)
|
13
|
+
activesupport (6.1.4.4)
|
14
14
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
15
15
|
i18n (>= 1.6, < 2)
|
16
16
|
minitest (>= 5.1)
|
@@ -21,13 +21,13 @@ GEM
|
|
21
21
|
coderay (1.1.3)
|
22
22
|
concurrent-ruby (1.1.9)
|
23
23
|
highline (2.0.3)
|
24
|
-
i18n (1.8.
|
24
|
+
i18n (1.8.11)
|
25
25
|
concurrent-ruby (~> 1.0)
|
26
26
|
mail (2.7.1)
|
27
27
|
mini_mime (>= 0.1.1)
|
28
28
|
method_source (1.0.0)
|
29
|
-
mini_mime (1.1.
|
30
|
-
minitest (5.
|
29
|
+
mini_mime (1.1.2)
|
30
|
+
minitest (5.15.0)
|
31
31
|
parallel (1.20.1)
|
32
32
|
parser (3.0.1.1)
|
33
33
|
ast (~> 2.4.1)
|
@@ -56,7 +56,7 @@ GEM
|
|
56
56
|
tzinfo (2.0.4)
|
57
57
|
concurrent-ruby (~> 1.0)
|
58
58
|
unicode-display_width (2.0.0)
|
59
|
-
zeitwerk (2.
|
59
|
+
zeitwerk (2.5.1)
|
60
60
|
|
61
61
|
PLATFORMS
|
62
62
|
ruby
|
@@ -67,4 +67,4 @@ DEPENDENCIES
|
|
67
67
|
rubocop
|
68
68
|
|
69
69
|
BUNDLED WITH
|
70
|
-
2.2.
|
70
|
+
2.2.22
|
data/README.md
CHANGED
@@ -1,3 +1,46 @@
|
|
1
1
|
# Fuck Facebook
|
2
2
|
|
3
3
|
A collection of tools to help you use Facebook when you don't want to
|
4
|
+
|
5
|
+
## Usage
|
6
|
+
|
7
|
+
Run `fuck-facebook --help` to get a list of options and explanations.
|
8
|
+
|
9
|
+
To get all unread messages (that haven't already been reported) run these commands:
|
10
|
+
|
11
|
+
```
|
12
|
+
fuck-facebook --login
|
13
|
+
```
|
14
|
+
|
15
|
+
You only need to login once
|
16
|
+
|
17
|
+
```
|
18
|
+
fuck-facebook --unread-messages
|
19
|
+
```
|
20
|
+
|
21
|
+
This will only show you unread messages that have been received since the last time you checked.
|
22
|
+
This way if you have emails going out for new messages, you won't get notified for the same message each time.
|
23
|
+
|
24
|
+
## Config
|
25
|
+
|
26
|
+
Here's a complete config file along with an explanation of each option:
|
27
|
+
|
28
|
+
```yaml
|
29
|
+
smtp:
|
30
|
+
from_email: sender@example.com
|
31
|
+
to_email: receiver@example.com
|
32
|
+
address: smtp.example.com
|
33
|
+
port: 587
|
34
|
+
user_name: some_user_name
|
35
|
+
password: 123456
|
36
|
+
authentication: plain
|
37
|
+
```
|
38
|
+
|
39
|
+
These options can be passed as environment variables, by:
|
40
|
+
* Joining the keys with `_`
|
41
|
+
* Capitalizing the entire string
|
42
|
+
* Prefixing the key with `FF_`
|
43
|
+
|
44
|
+
For example the `smtp` `from_email` will become `FF_SMTP_FROM_EMAIL`
|
45
|
+
|
46
|
+
Environment variables take precedent over the config file.
|
data/src/config.rb
CHANGED
@@ -4,6 +4,9 @@ class Config
|
|
4
4
|
CONFIG_FILE_PATH = "#{ENV['HOME']}/.local/share/fuck-facebook/config.yaml".freeze
|
5
5
|
|
6
6
|
def self.option(*path)
|
7
|
+
env_var = "FF_#{path.join('_').upcase}"
|
8
|
+
return ENV[env_var] if ENV[env_var]
|
9
|
+
|
7
10
|
path_strings = path.map(&:to_s)
|
8
11
|
config.dig(*path_strings)
|
9
12
|
end
|
data/src/facebook_connection.rb
CHANGED
@@ -31,6 +31,8 @@ class FacebookConnection
|
|
31
31
|
|
32
32
|
options = Selenium::WebDriver::Chrome::Options.new
|
33
33
|
options.add_argument('--disable-notifications')
|
34
|
+
options.add_argument('--no-sandbox')
|
35
|
+
options.add_argument('--disable-dev-shm-usage')
|
34
36
|
options.add_argument('--headless') if headless
|
35
37
|
options.add_option('detach', true) unless headless
|
36
38
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fuck_facebook
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Keeyan Nejad
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-12-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -81,6 +81,8 @@ files:
|
|
81
81
|
- ".rubocop.yml"
|
82
82
|
- ".ruby-version"
|
83
83
|
- CHANGELOG.md
|
84
|
+
- CONTRIBUTING.md
|
85
|
+
- Dockerfile
|
84
86
|
- Gemfile
|
85
87
|
- Gemfile.lock
|
86
88
|
- LICENSE.txt
|
@@ -135,7 +137,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
135
137
|
- !ruby/object:Gem::Version
|
136
138
|
version: '0'
|
137
139
|
requirements: []
|
138
|
-
rubygems_version: 3.2.
|
140
|
+
rubygems_version: 3.2.22
|
139
141
|
signing_key:
|
140
142
|
specification_version: 4
|
141
143
|
summary: A collection of tools to help you use Facebook when you don't want to
|