Introduction
Introduction Statistics Contact Development Disclaimer Help
README.md - fiche - A pastebin adjusted for gopher use
git clone git://vernunftzentrum.de/fiche.git
Log
Files
Refs
LICENSE
---
README.md (6935B)
---
1 fiche [![Build Status](https://travis-ci.org/solusipse/fiche.svg?branch=…
2 =====
3
4 Command line pastebin for sharing terminal output.
5
6 # Client-side usage
7
8 Self-explanatory live examples (using public server):
9
10 ```
11 echo just testing! | nc termbin.com 9999
12 ```
13
14 ```
15 cat file.txt | nc termbin.com 9999
16 ```
17
18 In case you installed and started fiche on localhost:
19
20 ```
21 ls -la | nc localhost 9999
22 ```
23
24 You will get an url to your paste as a response, e.g.:
25
26 ```
27 http://termbin.com/ydxh
28 ```
29
30 You can use our beautification service to get any paste colored and numb…
31
32 ```
33 http://l.termbin.com/ydxh
34 ```
35
36 ------------------------------------------------------------------------…
37
38 ## Useful aliases
39
40 You can make your life easier by adding a termbin alias to your rc file.…
41
42 ------------------------------------------------------------------------…
43
44 ### Pure-bash alternative to netcat
45
46 __Linux/macOS:__
47 ```
48 alias tb="(exec 3<>/dev/tcp/termbin.com/9999; cat >&3; cat <&3; exec 3<&…
49 ```
50
51 ```
52 echo less typing now! | tb
53 ```
54
55 _See [#42](https://github.com/solusipse/fiche/issues/42), [#43](https://…
56
57 ------------------------------------------------------------------------…
58
59 ### `tb` alias
60
61 __Linux (Bash):__
62 ```
63 echo 'alias tb="nc termbin.com 9999"' >> .bashrc
64 ```
65
66 ```
67 echo less typing now! | tb
68 ```
69
70 __macOS:__
71
72 ```
73 echo 'alias tb="nc termbin.com 9999"' >> .bash_profile
74 ```
75
76 ```
77 echo less typing now! | tb
78 ```
79
80 ------------------------------------------------------------------------…
81
82 ### Copy output to clipboard
83
84 __Linux (Bash):__
85 ```
86 echo 'alias tbc="netcat termbin.com 9999 | xclip -selection c"' >> .bash…
87 ```
88
89 ```
90 echo less typing now! | tbc
91 ```
92
93 __macOS:__
94
95 ```
96 echo 'alias tbc="nc termbin.com 9999 | pbcopy"' >> .bash_profile
97 ```
98
99 ```
100 echo less typing now! | tbc
101 ```
102
103 __Remember__ to reload the shell with `source ~/.bashrc` or `source ~/.b…
104
105 ------------------------------------------------------------------------…
106
107 ## Requirements
108 To use fiche you have to have netcat installed. You probably already hav…
109
110 ------------------------------------------------------------------------…
111
112 # Server-side usage
113
114 ## Installation
115
116 1. Clone:
117
118 ```
119 git clone https://github.com/solusipse/fiche.git
120 ```
121
122 2. Build:
123
124 ```
125 make
126 ```
127
128 3. Install:
129
130 ```
131 sudo make install
132 ```
133
134 ------------------------------------------------------------------------…
135
136 ## Usage
137
138 ```
139 usage: fiche [-D6epbsdSolBuw].
140 [-d domain] [-p port] [-s slug size]
141 [-o output directory] [-B buffer size] [-u user name]
142 [-l log file] [-b banlist] [-w whitelist] [-S]
143 ```
144
145 These are command line arguments. You don't have to provide any of them …
146
147 ### Settings
148
149 ------------------------------------------------------------------------…
150
151 #### Output directory `-o`
152
153 Relative or absolute path to the directory where you want to store user-…
154
155 ```
156 fiche -o ./code
157 ```
158
159 ```
160 fiche -o /home/www/code/
161 ```
162
163 __Default value:__ `./code`
164
165 ------------------------------------------------------------------------…
166
167 #### Domain `-d`
168
169 This will be used as a prefix for an output received by the client.
170 Value will be prepended with the domain prefix (see -P) if set or `http`…
171
172 ```
173 fiche -d domain.com
174 ```
175
176 ```
177 fiche -d subdomain.domain.com
178 ```
179
180 ```
181 fiche -d subdomain.domain.com/some_directory
182 ```
183
184 __Default value:__ `localhost`
185
186 ------------------------------------------------------------------------…
187
188 #### Slug size `-s`
189
190 This will force slugs to be of required length:
191
192 ```
193 fiche -s 6
194 ```
195
196 __Output url with default value__: `http://localhost/xxxx`,
197 where x is a randomized character
198
199 __Output url with example value 6__: `http://localhost/xxxx`,
200 where is a randomized character
201
202 __Default value:__ 4
203
204 ------------------------------------------------------------------------…
205
206 #### protocol prefix `-P`
207
208 If set, fiche returns url with protocol prefix 'prefix' instead of http
209
210 ```
211 fiche -P https
212 ```
213
214 __Output url with this parameter__: `https://localhost/xxxx`,
215 where x is a randomized character
216
217 ------------------------------------------------------------------------…
218
219 #### User name `-u`
220
221 Fiche will try to switch to the requested user on startup if any is prov…
222
223 ```
224 fiche -u _fiche
225 ```
226
227 __Default value:__ not set
228
229 __WARNING:__ This requires that fiche is started as a root.
230
231 ------------------------------------------------------------------------…
232
233 #### Buffer size `-B`
234
235 This parameter defines size of the buffer used for getting data from the…
236 Maximum size (in bytes) of all input files is defined by this value.
237
238 ```
239 fiche -B 2048
240 ```
241
242 __Default value:__ 32768
243
244 ------------------------------------------------------------------------…
245
246 #### Log file `-l`
247
248 ```
249 fiche -l /home/www/fiche-log.txt
250 ```
251
252 __Default value:__ not set
253
254 __WARNING:__ this file has to be user-writable
255
256 ------------------------------------------------------------------------…
257
258 #### Ban list `-b`
259
260 Relative or absolute path to a file containing IP addresses of banned us…
261
262 ```
263 fiche -b fiche-bans.txt
264 ```
265
266 __Format of the file:__ this file should contain only addresses, one per…
267
268 __Default value:__ not set
269
270 __WARNING:__ not implemented yet
271
272 ------------------------------------------------------------------------…
273
274 #### White list `-w`
275
276 If whitelist mode is enabled, only addresses from the list will be able
277 to upload files.
278
279 ```
280 fiche -w fiche-whitelist.txt
281 ```
282
283 __Format of the file:__ this file should contain only addresses, one per…
284
285 __Default value:__ not set
286
287 __WARNING:__ not implemented yet
288
289 ------------------------------------------------------------------------…
290
291 ### Running as a service
292
293 There's a simple systemd example:
294 ```
295 [Unit]
296 Description=FICHE-SERVER
297
298 [Service]
299 ExecStart=/usr/local/bin/fiche -d yourdomain.com -o /path/to/output -l /…
300
301 [Install]
302 WantedBy=multi-user.target
303 ```
304
305 __WARNING:__ In service mode you have to set output directory with `-o` …
306
307 ------------------------------------------------------------------------…
308
309 ### Example nginx config
310
311 Fiche has no http server built-in, thus you need to setup one if you wan…
312
313 There's a sample configuration for nginx:
314
315 ```
316 server {
317 listen 80;
318 server_name mysite.com www.mysite.com;
319 charset utf-8;
320
321 location / {
322 root /home/www/code/;
323 index index.txt index.html;
324 }
325 }
326 ```
327
328 ## License
329
330 Fiche is MIT licensed.
You are viewing proxied material from vernunftzentrum.de. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.