package oxbow

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Source file socket_path.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
let default () =
  match Sys.getenv_opt "OXBOW_SOCKET" with
  | Some p -> p
  | None ->
    let runtime_dir =
      match Sys.getenv_opt "XDG_RUNTIME_DIR" with
      | Some d -> d
      | None -> Sys.getenv "HOME"
    in
    let display =
      match Sys.getenv_opt "WAYLAND_DISPLAY" with
      | Some d -> d
      | None -> "wayland-0"
    in
    Filename.concat runtime_dir @@ Printf.sprintf "oxbow-%s.sock" display
;;

let resolve ?override () =
  match override with
  | Some p -> p
  | None -> default ()
;;