Skip to content

Could not load module ‘Sound.OSC.FD’ #62

@joenio

Description

@joenio
./bin/tidal
GHCi, version 8.8.4: https://www.haskell.org/ghc/  :? for help
Loaded package environment from /home/joenio/.ghc/x86_64-linux-8.8.4/environments/default

<no location info>: error:
    Could not load module ‘Sound.OSC.FD’
    It is a member of the hidden package ‘hosc-0.18.1’.
    You can run ‘:set -package hosc’ to expose it.
    (Note: this unloads all the modules in the current scope.)
[TidalCycles version 1.7.4]
Installed in /home/joenio/.cabal/store/ghc-8.8.4/tidal-1.7.4-b191e933ddf23fe19ad57df4b0e91310179a72a4d8450763eda0f32225dce658/share
Listening for external controls on 127.0.0.1:6010
Connected to SuperDirt.

<interactive>:39:24: error:
    Not in scope: ‘O.time’
    No module named ‘O’ is imported.
Loaded GHCi configuration from /home/joenio/.local/share/nvim/plugged/vim-tidal/bin/../Tidal.ghci

I faced the error already related and "fixed" on issue #59 but I'm wondering if there is something that could be done on vim-tidal side to be less error-prone about this situation.

I noted that some code on Tidal.ghci file could be done to improve the plugin when that error happen instead of having to remove the whole ~/.ghci and installing everything again as very well suggested on #59.

I solved this issue not removing the ~/.ghci but replacing the tidal boot file Tidal.ghci with the tidal boot file from Atom Editor tidalcycles plugin, why I did it? Because I tested my environment with Atom + tidalcycles plugin and it works as expected without any errors, the Atom + tidalcycles plugin was tested at the same environment where vim-tidal fails.

Then I replaced the vim-tidal boot file by the atom editor boot file and everything worked well on vim-tidal with no more errors about Sound.OSC.FD.

cp .atom/packages/tidalcycles/lib/BootTidal.hs .local/share/nvim/plugged/vim-tidal/Tidal.ghci

See the diff between vim-tidal boot file and atom tidalcycles plugin boot file:

diff --git a/Tidal.ghci b/Tidal.ghci
index 1640d99..07f485c 100644
--- a/Tidal.ghci
+++ b/Tidal.ghci
@@ -2,28 +2,18 @@
 :set prompt ""
 
 import Sound.Tidal.Context
-
 import System.IO (hSetEncoding, stdout, utf8)
-
-import qualified Control.Concurrent.MVar as MV
-import qualified Sound.Tidal.Tempo as Tempo
-import qualified Sound.OSC.FD as O
-
 hSetEncoding stdout utf8
 
 -- total latency = oLatency + cFrameTimespan
 tidal <- startTidal (superdirtTarget {oLatency = 0.1, oAddress = "127.0.0.1", oPort = 57120}) (defaultConfig {cFrameTimespan = 1/20})
 
 :{
-let only = (hush >>)
-    p = streamReplace tidal
+let p = streamReplace tidal
     hush = streamHush tidal
-    panic = do hush
-               once $ sound "superpanic"
     list = streamList tidal
     mute = streamMute tidal
     unmute = streamUnmute tidal
-    unmuteAll = streamUnmuteAll tidal
     solo = streamSolo tidal
     unsolo = streamUnsolo tidal
     once = streamOnce tidal
@@ -33,11 +23,6 @@ let only = (hush >>)
     all = streamAll tidal
     resetCycles = streamResetCycles tidal
     setcps = asap . cps
-    getcps = do tempo <- MV.readMVar $ sTempoMV tidal
-                return $ Tempo.cps tempo
-    getnow = do tempo <- MV.readMVar $ sTempoMV tidal
-                now <- O.time
-                return $ fromRational $ Tempo.timeToCycles tempo now
     xfade i = transition tidal True (Sound.Tidal.Transition.xfadeIn 4) i
     xfadeIn i t = transition tidal True (Sound.Tidal.Transition.xfadeIn t) i
     histpan i t = transition tidal True (Sound.Tidal.Transition.histpan t) i

Maybe there is nothing to be done then feel free to close this issue if is the case.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions