This is a simple installation and configuration manual to setup a private mailserver. The instructions will be continued in future...
- Apple M1 with macOS Big Sur but it should working at Intel Macs 64-bit too.
- Replacement for the missing mail and imap services in the macOS Server
- Receiving and sending emails of all accounts (private and business)
- Using Postfix, Dovecot and Fetchmail
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| type t<'a> = Js.Promise.t<'a> | |
| type error | |
| @bs.new | |
| external make: ((@bs.uncurry ~resolve: (. 'a) => unit, ~reject: (. exn) => unit) => unit) => t<'a> = | |
| "Promise" | |
| @bs.val @bs.scope("Promise") external resolve: 'a => t<'a> = "resolve" | |
| @bs.val @bs.scope("Promise") external reject: exn => t<'a> = "reject" | |
| @bs.val @bs.scope("Promise") | |
| external all: array<t<'a>> => t<array<'a>> = "all" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| type heading = | |
| | North | |
| | South | |
| | East | |
| | West; | |
| type position = { | |
| x: int, | |
| y: int, | |
| heading, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| type ordering = | |
| | Greater | |
| | Less | |
| | Equal; | |
| // ORD typeclass / interface module | |
| module type ORD = { | |
| type t; | |
| let compare: (t, t) => ordering; | |
| }; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| namespace MyName { | |
| export type MyType = string | number; | |
| export const myValue: MyType = createSampleValue(); | |
| // internal | |
| function createSampleValue(): string { | |
| return "test"; | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| open Relude.Globals; // I usually do this in bsconfig | |
| type user = { | |
| firstName: string, | |
| lastName: string, | |
| }; | |
| type error = | |
| | AlreadyLoggedIn; | |
| type context = { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| module Mark = { | |
| [@unboxed] | |
| type t = | |
| | Any('a): t; | |
| module Link = { | |
| type attrs = { | |
| href: string, | |
| target: string, | |
| }; |
NewerOlder