diff options
-rwxr-xr-x | bollux | 6 | ||||
-rw-r--r-- | bollux.1 | 32 | ||||
-rw-r--r-- | bollux.conf.5 | 42 |
3 files changed, 48 insertions, 32 deletions
diff --git a/bollux b/bollux index 1aaa70f..9b8d5fa 100755 --- a/bollux +++ b/bollux | |||
@@ -336,10 +336,9 @@ gemini_request() { | |||
336 | server="${server%%/*}" | 336 | server="${server%%/*}" |
337 | 337 | ||
338 | ssl_cmd=(openssl s_client -crlf -quiet -connect "$server:$port") | 338 | ssl_cmd=(openssl s_client -crlf -quiet -connect "$server:$port") |
339 | # disable old TLS/SSL versions (thanks makeworld!) | 339 | # disable old TLS/SSL versions |
340 | ssl_cmd+=(-no_ssl3 -no_tls1 -no_tls1_1) | 340 | ssl_cmd+=(-no_ssl3 -no_tls1 -no_tls1_1) |
341 | 341 | ||
342 | # always try to connect with TLS v1.3 first | ||
343 | run "${ssl_cmd[@]}" <<<"$url" 2>/dev/null | 342 | run "${ssl_cmd[@]}" <<<"$url" 2>/dev/null |
344 | } | 343 | } |
345 | 344 | ||
@@ -849,9 +848,8 @@ bollux_init() { | |||
849 | } | 848 | } |
850 | 849 | ||
851 | bollux_cleanup() { | 850 | bollux_cleanup() { |
852 | # XXX | 851 | # Stubbed in case of need in future |
853 | : | 852 | : |
854 | #kill $(jobs -p) | ||
855 | } | 853 | } |
856 | 854 | ||
857 | history_append() { # history_append url TITLE | 855 | history_append() { # history_append url TITLE |
diff --git a/bollux.1 b/bollux.1 index 4b6948d..122934d 100644 --- a/bollux.1 +++ b/bollux.1 | |||
@@ -1,6 +1,7 @@ | |||
1 | .TH bollux 1 0.3.0 | 1 | .TH bollux 1 0.4.0 |
2 | .SH NAME | 2 | .SH NAME |
3 | bollux \- gemini protocol browser written in bash(1) | 3 | bollux \- gemini protocol browser written in |
4 | .BR bash (1) | ||
4 | .SH SYNOPSIS | 5 | .SH SYNOPSIS |
5 | .B bollux | 6 | .B bollux |
6 | .RI [ \-h ] | 7 | .RI [ \-h ] |
@@ -26,11 +27,11 @@ Be quiet: don't show any messages, even fatal ones | |||
26 | .TP | 27 | .TP |
27 | .B \-v | 28 | .B \-v |
28 | Be verbose: show all messages, even debug ones | 29 | Be verbose: show all messages, even debug ones |
29 | .TP | 30 | .\".TP |
30 | .B \-c CONFIG | 31 | .\".B \-c CONFIG |
31 | Use CONFIG file to configure | 32 | .\"Use CONFIG file to configure |
32 | .BR bollux (1) | 33 | .\".BR bollux (1) |
33 | instead of the default: $XDG_CONFIG_HOME/bollux/bollux.conf. | 34 | .\"instead of the default: $XDG_CONFIG_HOME/bollux/bollux.conf. |
34 | .TP | 35 | .TP |
35 | .B URL | 36 | .B URL |
36 | The gemini URL to navigate to | 37 | The gemini URL to navigate to |
@@ -67,10 +68,21 @@ quit bollux | |||
67 | If a new URL is selected, | 68 | If a new URL is selected, |
68 | .BR bollux (1) | 69 | .BR bollux (1) |
69 | will repeat the download-and-display loop with the new URL. | 70 | will repeat the download-and-display loop with the new URL. |
70 | .SH ISSUES | 71 | .PP |
71 | There is currently no history storage or recall. | 72 | If the mimetype is other than text/*, |
72 | .BR bollux (1) | 73 | .BR bollux (1) |
73 | can get confused on some URLs \-\- munging them correctly is an area of active research. | 74 | will attempt to download the file to |
75 | .B $BOLLUX_DOWNDIR | ||
76 | (which defaults to '.'). | ||
77 | .PP | ||
78 | .BR bollux (1) | ||
79 | also supports the gopher protocol, | ||
80 | which is browsed the same way as the gemini protocol | ||
81 | (except the URL starts with 'gopher://'). | ||
82 | Gopher support is as of now rudimentary. | ||
83 | .SH ISSUES | ||
84 | Certificate handling needs to be much improved: TOFU needs to be implemented | ||
85 | and bollux should be able to generate client certificates. | ||
74 | .SH SEE ALSO | 86 | .SH SEE ALSO |
75 | .BR bollux.conf (5) | 87 | .BR bollux.conf (5) |
76 | .SH BUGS | 88 | .SH BUGS |
diff --git a/bollux.conf.5 b/bollux.conf.5 index 9cee1b5..9f431db 100644 --- a/bollux.conf.5 +++ b/bollux.conf.5 | |||
@@ -1,4 +1,4 @@ | |||
1 | .TH bollux.conf 5 0.3.0 | 1 | .TH bollux.conf 5 0.4.0 |
2 | .SH NAME | 2 | .SH NAME |
3 | .B bollux.conf | 3 | .B bollux.conf |
4 | \- configuration file for | 4 | \- configuration file for |
@@ -17,7 +17,7 @@ Here are actually useful variables that are good things to set in your | |||
17 | in order of usefulness. | 17 | in order of usefulness. |
18 | .TP | 18 | .TP |
19 | .BR BOLLUX_URL | 19 | .BR BOLLUX_URL |
20 | valid values are URLs; default is ''. | 20 | valid values are URLs; default is ''. |
21 | .br | 21 | .br |
22 | If | 22 | If |
23 | .B BOLLUX_URL | 23 | .B BOLLUX_URL |
@@ -28,7 +28,7 @@ otherwise it asks the user for where to go. | |||
28 | Setting this variable works like setting a home page. | 28 | Setting this variable works like setting a home page. |
29 | .TP | 29 | .TP |
30 | .BR BOLLUX_DOWNDIR | 30 | .BR BOLLUX_DOWNDIR |
31 | valid values are directories; default is '.'. | 31 | valid values are directories; default is '.'. |
32 | .br | 32 | .br |
33 | The directory to attempt to save downloads in. | 33 | The directory to attempt to save downloads in. |
34 | .BR bollux (1) | 34 | .BR bollux (1) |
@@ -42,14 +42,14 @@ or if there's another file with the same name, | |||
42 | will report the name of the temporary file it saved. | 42 | will report the name of the temporary file it saved. |
43 | .TP | 43 | .TP |
44 | .BR BOLLUX_DATADIR | 44 | .BR BOLLUX_DATADIR |
45 | valid values are directories; default is '$XDG_DATA_DIR/bollux'. | 45 | valid values are directories; default is '$XDG_DATA_DIR/bollux'. |
46 | .br | 46 | .br |
47 | The directory | 47 | The directory |
48 | .BR bollux (1) | 48 | .BR bollux (1) |
49 | will put its data files, such as history, cert fingerprints, etc. | 49 | will put its data files, such as history, cert fingerprints, etc. |
50 | .TP | 50 | .TP |
51 | .BR BOLLUX_MAXREDIR | 51 | .BR BOLLUX_MAXREDIR |
52 | valid values are integers; default is '5'. | 52 | valid values are integers; default is '5'. |
53 | .br | 53 | .br |
54 | The maximum number of redirects before | 54 | The maximum number of redirects before |
55 | .BR bollux (1) | 55 | .BR bollux (1) |
@@ -57,7 +57,7 @@ decides to quit. | |||
57 | The default is 5 as per some RFC spec. | 57 | The default is 5 as per some RFC spec. |
58 | .TP | 58 | .TP |
59 | .BR BOLLUX_LOGLEVEL | 59 | .BR BOLLUX_LOGLEVEL |
60 | valid values are '', DEBUG or QUIET; default is ''. | 60 | valid values are '', DEBUG or QUIET; default is ''. |
61 | .br | 61 | .br |
62 | How verbose | 62 | How verbose |
63 | .BR bollux (1) | 63 | .BR bollux (1) |
@@ -80,13 +80,13 @@ the default function is pretty nice (at least in my opinion). | |||
80 | The following variables control how text/gemini content is rendered: | 80 | The following variables control how text/gemini content is rendered: |
81 | .TP | 81 | .TP |
82 | .BR T_MARGIN | 82 | .BR T_MARGIN |
83 | valid values are integers; default is 4. | 83 | valid values are integers; default is 4. |
84 | .br | 84 | .br |
85 | The left margin for text. | 85 | The left margin for text. |
86 | Should be at least 3, since line-markers will be displayed in the left margin. | 86 | Should be at least 3, since line-markers will be displayed in the left margin. |
87 | .TP | 87 | .TP |
88 | .BR T_WIDTH | 88 | .BR T_WIDTH |
89 | valid values are integers; default is 0. | 89 | valid values are integers; default is 0. |
90 | .br | 90 | .br |
91 | The total width of the window, including | 91 | The total width of the window, including |
92 | .BR T_MARGIN . | 92 | .BR T_MARGIN . |
@@ -104,22 +104,22 @@ meaning valid values are anything between those that are valid terminal | |||
104 | color escapes. | 104 | color escapes. |
105 | .TP | 105 | .TP |
106 | .BR C_SIGIL | 106 | .BR C_SIGIL |
107 | default: 35 (fg: magenta) | 107 | default: 35 (fg: magenta) |
108 | .br | 108 | .br |
109 | The color of the line type as defined by text/gemini. | 109 | The color of the line type as defined by text/gemini. |
110 | .TP | 110 | .TP |
111 | .BR C_LINK_NUMBER | 111 | .BR C_LINK_NUMBER |
112 | default: 1 (bold) | 112 | default: 1 (bold) |
113 | .br | 113 | .br |
114 | The color of the link number added by typeset_gemini. | 114 | The color of the link number added by typeset_gemini. |
115 | .TP | 115 | .TP |
116 | .BR C_LINK_TITLE | 116 | .BR C_LINK_TITLE |
117 | default: 4 (underline) | 117 | default: 4 (underline) |
118 | .br | 118 | .br |
119 | The color of the link's title, or if titleless, the URL. | 119 | The color of the link's title, or if titleless, the URL. |
120 | .TP | 120 | .TP |
121 | .BR C_LINK_URL | 121 | .BR C_LINK_URL |
122 | default: 36 (fg: cyan) | 122 | default: 36 (fg: cyan) |
123 | .br | 123 | .br |
124 | The color of the link's URL. | 124 | The color of the link's URL. |
125 | If the link doesn't have a title, this isn't used. | 125 | If the link doesn't have a title, this isn't used. |
@@ -134,12 +134,12 @@ for level 3 is | |||
134 | .IR 3 . | 134 | .IR 3 . |
135 | .TP | 135 | .TP |
136 | .BR C_LIST | 136 | .BR C_LIST |
137 | default: 0 (no formatting) | 137 | default: 0 (no formatting) |
138 | .br | 138 | .br |
139 | The color of list items. | 139 | The color of list items. |
140 | .TP | 140 | .TP |
141 | .BR C_PRE | 141 | .BR C_PRE |
142 | default: 0 (no formatting) | 142 | default: 0 (no formatting) |
143 | .br | 143 | .br |
144 | The color of preformatted lines, as delimited by '```'. | 144 | The color of preformatted lines, as delimited by '```'. |
145 | .SS Variables that could be configured, but probably shouldn't be | 145 | .SS Variables that could be configured, but probably shouldn't be |
@@ -152,26 +152,32 @@ work differently, like browsing gopher instead of gemini, | |||
152 | but that capability has not been tested. | 152 | but that capability has not been tested. |
153 | .TP | 153 | .TP |
154 | .BR BOLLUX_PORT | 154 | .BR BOLLUX_PORT |
155 | valid values are port numbers (1-65535); default is '1965'. | 155 | valid values are port numbers (1-65535); default is '1965'. |
156 | .br | 156 | .br |
157 | The port | 157 | The port |
158 | .BR bollux (1) | 158 | .BR bollux (1) |
159 | tries to connect to on the server. | 159 | tries to connect to on the server. |
160 | .TP | 160 | .TP |
161 | .BR BOLLUX_PROTO | 161 | .BR BOLLUX_PROTO |
162 | valid values are protocol names (strings); default is 'gemini'. | 162 | valid values are protocol names (strings); default is 'gemini'. |
163 | .br | 163 | .br |
164 | The protocol to use. | 164 | The protocol to use. |
165 | .TP | 165 | .TP |
166 | .BR BOLLUX_TIMEOUT | ||
167 | valid values are as specified in 'help read'; default is '30'. | ||
168 | .br | ||
169 | The request timeout duration. | ||
170 | Specified in seconds. | ||
171 | .TP | ||
166 | .BR BOLLUX_LESSKEY | 172 | .BR BOLLUX_LESSKEY |
167 | valid values are files; default is '$BOLLUX_DATADIR/lesskey'. | 173 | valid values are files; default is '$BOLLUX_DATADIR/lesskey'. |
168 | .br | 174 | .br |
169 | Where to store the generated | 175 | Where to store the generated |
170 | .BR lesskey (1) | 176 | .BR lesskey (1) |
171 | file. | 177 | file. |
172 | .TP | 178 | .TP |
173 | .BR BOLLUX_PAGESRC | 179 | .BR BOLLUX_PAGESRC |
174 | valid values are files; default is '$BOLLUX_DATADIR/pagesrc'. | 180 | valid values are files; default is '$BOLLUX_DATADIR/pagesrc'. |
175 | .br | 181 | .br |
176 | Where to store the page source of the site being visited. | 182 | Where to store the page source of the site being visited. |
177 | It's not used right now by | 183 | It's not used right now by |