]>
Commit | Line | Data |
---|---|---|
6988a057 JH |
1 | # Mobius |
2 | ||
69fceb2e | 3 | Mobius is a cross-platform command line [Hotline](https://en.wikipedia.org/wiki/Hotline_Communications) server, client, and library developed in Golang. |
6988a057 | 4 | |
69fceb2e | 5 | The project aims to support Hotline functionality from versions v1.2.3 and >v1.5 (e.g. threaded news and folder transfers). |
6988a057 | 6 | |
69fceb2e | 7 | ## Project status |
6988a057 | 8 | |
69fceb2e JH |
9 | ### Server |
10 | ||
11 | * Near feature complete | |
12 | ||
13 | ### Client | |
14 | ||
15 | * Early stage with functionality for chat and news posting only | |
16 | ||
17 | # Getting started | |
18 | ||
19 | ### Mac OS | |
20 | ||
21 | For Mac OS the easiest path to installation is to install through Homebrew. | |
6988a057 JH |
22 | |
23 | #### Client | |
24 | ||
25 | brew install jhalter/mobius-hotline-client/mobius-hotline-client | |
26 | ||
69fceb2e JH |
27 | After installation `mobius-hotline-client` installed to `/usr/local/bin/mobius-hotline-client` and should be in your $PATH. |
28 | ||
29 | The client config file is in `/usr/local/etc/mobius-client-config.yaml` | |
30 | ||
31 | Run `mobius-hotline-client -help` for usage options. | |
32 | ||
6988a057 JH |
33 | #### Server |
34 | ||
35 | brew install jhalter/mobius-hotline-client/mobius-hotline-client | |
36 | ||
69fceb2e JH |
37 | After installation `mobius-hotline-server` installed to `/usr/local/bin/mobius-hotline-server` and should be in your $PATH. |
38 | ||
39 | The server config file directory is under `/usr/local/var/mobius` which by default contains: | |
40 | ||
41 | /usr/local/var/mobius/config/MessageBoard.txt | |
42 | /usr/local/var/mobius/config/config.yaml | |
43 | /usr/local/var/mobius/config/ThreadedNews.yaml | |
44 | /usr/local/var/mobius/config/Agreement.txt | |
45 | /usr/local/var/mobius/config/Users/guest.yaml | |
46 | /usr/local/var/mobius/config/Users/admin.yaml | |
47 | ||
48 | Edit `/usr/local/var/mobius/config/config.yaml` to change your server name and other settings. | |
49 | ||
50 | Edit `/usr/local/var/mobius/config/Agreement.txt` to set your server agreement. | |
51 | ||
52 | Run `mobius-hotline-server -help` for usage options. | |
53 | ||
6988a057 JH |
54 | ### Linux |
55 | ||
56 | Download a compiled release for your architecture from the Releases page | |
57 | ||
58 | ### Windows | |
59 | ||
60 | TODO | |
61 | ||
6988a057 | 62 | |
69fceb2e | 63 | ### Build from source |
6988a057 | 64 | |
69fceb2e | 65 | To build from source, run: |
6988a057 | 66 | |
69fceb2e JH |
67 | make build-client |
68 | make build-server | |
6988a057 JH |
69 | |
70 | ## Usage | |
71 | ||
72 | ### Precompiled binaries | |
73 | To get started quickly, download the precompiled binaries for your platform: | |
74 | ||
75 | * [Linux]() | |
76 | * [Mac OS X]() | |
77 | ||
78 | ## Compatibility | |
79 | ||
6988a057 JH |
80 | |
81 | ||
82 | # TODO | |
83 | ||
84 | * Implement 1.5+ protocol account editing | |
85 | * Implement folder transfer resume | |
86 | * Implement file transfer queuing | |
87 | * Map additional file extensions to file type and creator codes | |
88 | * Implement file comment read/write | |
89 | * Implement user banning | |
90 | * Implement Maximum Simultaneous Downloads | |
91 | * Maximum simultaneous downloads/client | |
92 | * Maximum simultaneous connections/IP | |
93 | * Implement server broadcast | |
94 | * Implement statistics: | |
95 | * Currently Connected | |
96 | * Downloads in progress | |
97 | * Uploads in progress | |
98 | * Waiting Downloads | |
99 | * Connection Peak | |
100 | * Connection Counter | |
101 | * Download Counter | |
102 | * Upload Counter | |
103 | * Since | |
104 | ||
105 | ||
106 | # TODO - Someday Maybe | |
107 | ||
108 | * Implement Pitbull protocol extensions |