]> git.netwichtig.de Git - user/henk/code/ruby/rbot.git/blobdiff - lib/rbot/rbotconfig.rb
Stupid horrible typo in botuser.rb login method
[user/henk/code/ruby/rbot.git] / lib / rbot / rbotconfig.rb
index 01f66307b512085d9228665e08f6d7623d53522c..409ab9f8d415fb0feda07cbc3cc9e39527cf25f7 100644 (file)
@@ -1,26 +1,38 @@
 module Irc
   module Config
     @@datadir = nil
+    @@coredir = nil
 
-    # first try for the default path to the data dir    
-    defaultdir = File.expand_path(File.dirname($0) + '/../data')
+    # first try for the default path to the data dir
+    defaultdatadir = File.expand_path(File.dirname($0) + '/../data/rbot')
+    defaultcoredir = File.expand_path(File.dirname($0) + '/../lib/rbot/core')
 
-    if File.directory? "#{defaultdir}/rbot"
-      @@datadir = "#{defaultdir}/rbot"
+    if File.directory? defaultdatadir
+      @@datadir = defaultdatadir
     end
-    
+
+    if File.directory? defaultcoredir
+      @@coredir = defaultcoredir
+    end
+
     # setup pkg-based configuration - i.e. where were we installed to, where
     # are our data files, etc.
-    if @@datadir.nil?
+    if @@datadir.nil? or @@coredir.nil?
       begin
         debug "trying to load rubygems"
         require 'rubygems'
         debug "loaded rubygems, looking for rbot-#$version"
-        gemname, gem = Gem.source_index.find{|name, spec| spec.name == 'rbot' && spec.version.version == $version}
+        if $version =~ /(.*)-svn\Z/
+          version = $1
+        else
+          version = $version
+        end
+        gemname, gem = Gem.source_index.find{|name, spec| spec.name == 'rbot' && spec.version.version == version}
         debug "got gem #{gem}"
         if gem && path = gem.full_gem_path
           debug "installed via rubygems to #{path}"
           @@datadir = "#{path}/data/rbot"
+          @@coredir = "#{path}/lib/rbot/core"
         else
           debug "not installed via rubygems"
         end
@@ -29,18 +41,23 @@ module Irc
       end
     end
 
-    if @@datadir.nil?
+    if @@datadir.nil? or @@coredir.nil?
       begin
         require 'rbot/pkgconfig'
         @@datadir = PKGConfig::DATADIR
+        @@coredir = PKGConfig::COREDIR
       rescue LoadError
-        puts "fatal - no way to determine data dir"
+        error "fatal - no way to determine data or core dir"
         exit 2
       end
     end
-    
+
     def Config.datadir
       @@datadir
     end
+
+    def Config.coredir
+      @@coredir
+    end
   end
 end