maybe chmod 0644 './skel/.bash_profile'
maybe chmod 0644 './skel/.bashrc'
maybe chmod 0700 './skel/.ssh'
+maybe chmod 0644 './slsh.rc'
maybe chmod 0755 './ssh'
maybe chmod 0644 './ssh/moduli'
maybe chmod 0644 './ssh/ssh_config'
--- /dev/null
+% -*- slang -*-
+
+% This file gets loaded whenever slsh runs. Its primary purpose is to define
+% some functions that are useful in scripts, and to set up some local paths
+
+private define dir_exists (dir)
+{
+ variable s = stat_file (dir);
+ if (s == NULL) return 0;
+ return stat_is ("dir", s.st_mode);
+}
+
+%!%+
+%\function{prepend_to_slang_load_path}
+%\synopsis{Prepend a directory to the load-path}
+%\usage{prepend_to_slang_load_path (String_Type dir)}
+%\description
+% This function adds a directory to the beginning of the interpreter's
+% load-path.
+%\seealso{append_to_slang_load_path, set_slang_load_path}
+%!%-
+public define prepend_to_slang_load_path (p)
+{
+ if (dir_exists (p))
+ set_slang_load_path (sprintf ("%s%c%s", p, path_get_delimiter (), get_slang_load_path ()));
+}
+
+%!%+
+%\function{append_to_slang_load_path}
+%\synopsis{Append a directory to the load-path}
+%\usage{append_to_slang_load_path (String_Type dir)}
+%\description
+% This function adds a directory to the end of the interpreter's
+% load-path.
+%\seealso{prepend_to_slang_load_path, set_slang_load_path}
+%!%-
+public define append_to_slang_load_path (p)
+{
+ if (dir_exists (p))
+ set_slang_load_path (sprintf ("%s%c%s", get_slang_load_path (), path_get_delimiter (), p));
+}
+
+() = evalfile ("autoload.sl");
+
+#ifdef __INTERACTIVE__
+() = evalfile ("slshrl.sl");
+#endif
+
+% Add local additions here
+
+prepend_to_slang_load_path("/usr/share/slsh/local-packages");