Permalink
Browse files

Put everything in a monodevelop project.

  • Loading branch information...
1 parent 90a067a commit ef235a14e65da67b847b60d8a609cafd36a98d46 @hbons committed May 3, 2010
View
@@ -1,2 +1,3 @@
*~
*.exe
+*.exe.mdb
View
@@ -1,26 +1,27 @@
-SparklePony.exe : src/SparklePony.cs
- gmcs -pkg:gtk-sharp-2.0 -pkg:notify-sharp -pkg:dbus-sharp src/SparklePony.cs
+SparkleShare.exe : SparkleShare.sln
+ mdtool build --f --buildfile:SparkleShare.sln
install:
- mkdir -p /usr/local/share/sparklepony
- cp src/SparklePony.exe /usr/local/share/sparklepony/
- chmod 755 /usr/local/share/sparklepony/SparklePony.exe
- cp src/sparklepony /usr/local/bin/
- chmod 755 /usr/local/bin/sparklepony
+ mkdir -p /usr/local/share/sparkleshare
+ cp SparkleShare/bin/Debug/SparkleShare.exe /usr/local/share/sparkleshare/
+ cp SparkleShare/bin/Debug/SparkleShare.exe.mdb /usr/local/share/sparkleshare/
+ chmod 755 /usr/local/share/sparkleshare/SparkleShare.exe
+ cp sparkleshare /usr/local/bin/
+ chmod 755 /usr/local/bin/sparkleshare
cp data/icons /usr/share/ -R
mkdir -p ~/.config/autostart
- cp data/sparklepony.desktop.in ~/.config/autostart/sparklepony.desktop
- chmod 775 ~/.config/autostart/sparklepony.desktop
+ cp data/sparkleshare.desktop.in ~/.config/autostart/sparkleshare.desktop
+ chmod 775 ~/.config/autostart/sparkleshare.desktop
gtk-update-icon-cache /usr/share/icons/hicolor -f
uninstall:
- rm /usr/local/bin/sparklepony
- rm /usr/local/share/sparklepony/SparklePony.exe
- rmdir /usr/local/share/sparklepony
- rm /usr/share/icons/hicolor/*x*/places/folder-sparklepony.png
+ rm /usr/local/bin/sparkleshare
+ rm /usr/local/share/sparkleshare/SparkleShare.exe
+ rmdir /usr/local/share/sparkleshare
+ rm /usr/share/icons/hicolor/*x*/places/folder-sparkleshare.png
rm /usr/share/icons/hicolor/*x*/status/document-*ed.png
rm /usr/share/icons/hicolor/*x*/status/avatar-default.png
- rm ~/.config/autostart/sparklepony.desktop
+ rm ~/.config/autostart/sparkleshare.desktop
clean:
- rm src/SparklePony.exe
+ rm src/sparkleshare.exe
View
24 README
@@ -1,29 +1,29 @@
-SparklePony is a file sharing and collaboration tool inspired by DropBox. It
+SparkleShare is a file sharing and collaboration tool inspired by DropBox. It
allows you to instantly sync with any Git repository you have access to.
-SparklePony isn't just a piece of software, it's part of your workflow. It's
+SparkleShare isn't just a piece of software, it's part of your workflow. It's
designed to make sharing documents and collaboration easier, and to make peers
aware of what you are doing. The user interface and features are made to
-support this goal. However, you may find SparklePony useful for other kinds of
+support this goal. However, you may find SparkleShare useful for other kinds of
purposes as well, like backing up files or monitoring your favourite project.
-SparklePony is not designed to be:
+SparkleShare is not designed to be:
- a graphical frontend for git
- a backup tool
In contrast to the projects name, we will very likely
refuse to implement your personal ponies. :)
-SparklePony currently only works on Linux/GNOME.
+SparkleShare currently only works on Linux/GNOME.
Windows and OSX ports are planned for the future.
-SparklePony is free software and licensed under the GNU GPLv3. You are welcome
+SparkleShare is free software and licensed under the GNU GPLv3. You are welcome
to change and redistribute it under certain conditions. For more information
see the LICENSE file or visit http://www.gnu.org/licenses/gpl-3.0.html
-SparklePony currently requires (in alphabetical order):
+SparkleShare currently requires (in alphabetical order):
- ndesk-dbus-devel >= 0.6
- git >= 1.7
- gtk-sharp2 >= 2.12.7
@@ -35,23 +35,23 @@ Installing dependencies on Fedora:
# yum install git gtk-sharp2 gtk-sharp2-devel mono-core notify-sharp \
notify-sharp-devel ndesk-dbus-devel
-You can build and install SparklePony like this:
+You can build and install SparkleShare like this:
$ make
$ su
# make install
Run the service:
- $ sparklepony start
+ $ sparkleshare start
You can stop the service via the graphical interface or by typing:
- $ sparklepony stop
+ $ sparkleshare stop
For help:
- $ sparklepony --help
+ $ sparkleshare --help
The official website is:
-http://www.github.com/hbons/SparklePony
+http://www.github.com/hbons/SparkleShare
Have fun! :)
View
@@ -0,0 +1,22 @@
+
+Microsoft Visual Studio Solution File, Format Version 9.00
+# Visual Studio 2005
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SparkleShare", "SparkleShare\SparkleShare.csproj", "{728483AA-E34B-4441-BF2C-C8BC2901E4E0}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {728483AA-E34B-4441-BF2C-C8BC2901E4E0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {728483AA-E34B-4441-BF2C-C8BC2901E4E0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {728483AA-E34B-4441-BF2C-C8BC2901E4E0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {728483AA-E34B-4441-BF2C-C8BC2901E4E0}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(MonoDevelopProperties) = preSolution
+ name = SparkleShare
+ version = 0.1
+ StartupItem = SparkleShare\SparkleShare.csproj
+ EndGlobalSection
+EndGlobal
View
@@ -0,0 +1,25 @@
+<Properties>
+ <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug" ctype="Workspace" />
+ <MonoDevelop.Ide.Workbench ActiveDocument="SparkleShare/SparklePonyWindow.cs" ctype="Workbench">
+ <Files>
+ <File FileName="SparkleShare/Main.cs" Line="35" Column="3" />
+ <File FileName="SparkleShare/Repository.cs" Line="463" Column="1" />
+ <File FileName="SparkleShare/SparklePonyUI.cs" Line="18" Column="21" />
+ <File FileName="SparkleShare/SparklePonyStatusIcon.cs" Line="18" Column="21" />
+ <File FileName="SparkleShare/SparklePonyWindow.cs" Line="490" Column="22" />
+ </Files>
+ <Pads>
+ <Pad Id="ProjectPad">
+ <State expanded="True">
+ <Node name="SparkleShare" expanded="True">
+ <Node name="References" expanded="True" />
+ <Node name="SparklePonyWindow.cs" selected="True" />
+ </Node>
+ </State>
+ </Pad>
+ <Pad Id="ClassPad">
+ <State expanded="True" selected="True" />
+ </Pad>
+ </Pads>
+ </MonoDevelop.Ide.Workbench>
+</Properties>
View
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>
+<ArrayOfUserTask xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
View
@@ -0,0 +1,106 @@
+// SparkleShare, an instant update workflow to Git.
+// Copyright (C) 2010 Hylke Bons <hylkebons@gmail.com>
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+using Gtk;
+using Notifications;
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.IO;
+using System.Net;
+using System.Security.Cryptography;
+using System.Text;
+using System.Text.RegularExpressions;
+using System.Timers;
+
+
+namespace SparkleShare {
+
+ // This is SparkleShare!
+ public class SparkleShare {
+
+
+
+ public static SparkleShareUI SparkleShareUI;
+
+ public static void Main (string [] args) {
+
+ // Check if git is installed
+ Process Process = new Process();
+ Process.StartInfo.RedirectStandardOutput = true;
+ Process.StartInfo.UseShellExecute = false;
+ Process.StartInfo.FileName = "git";
+ Process.Start();
+ if (Process.StandardOutput.ReadToEnd().IndexOf ("version") == -1) {
+ Console.WriteLine ("Git wasn't found.");
+ Console.WriteLine ("You can get it from http://git-scm.com/.");
+ Environment.Exit (0);
+ }
+
+ // Don't allow running as root
+ Process.StartInfo.FileName = "whoami";
+ Process.Start();
+ if (Process.StandardOutput.ReadToEnd().Trim ().Equals ("root")) {
+ Console.WriteLine ("Sorry, you can't run SparkleShare as root.");
+ Console.WriteLine ("Things will go utterly wrong.");
+ Environment.Exit (0);
+ }
+
+ // Parse the command line arguments
+ bool HideUI = false;
+ if (args.Length > 0) {
+ foreach (string Argument in args) {
+ if (Argument.Equals ("--disable-gui") || Argument.Equals ("-d"))
+ HideUI = true;
+ if (Argument.Equals ("--help") || Argument.Equals ("-h")) {
+ ShowHelp ();
+ }
+ }
+ }
+
+ Gtk.Application.Init ();
+
+ SparkleShareUI = new SparkleShareUI (HideUI);
+ SparkleShareUI.StartMonitoring ();
+
+ Gtk.Application.Run ();
+
+ }
+
+ public static void ShowHelp () {
+ Console.WriteLine ("SparkleShare Copyright (C) 2010 Hylke Bons");
+ Console.WriteLine ("");
+ Console.WriteLine ("This program comes with ABSOLUTELY NO WARRANTY.");
+ Console.WriteLine ("This is free software, and you are welcome to redistribute it ");
+ Console.WriteLine ("under certain conditions. Please read the GNU GPLv3 for details.");
+ Console.WriteLine ("");
+ Console.WriteLine ("SparkleShare syncs the ~/SparkleShare folder with remote repositories.");
+ Console.WriteLine ("");
+ Console.WriteLine ("Usage: sparkleshare [start|stop|restart] [OPTION]...");
+ Console.WriteLine ("Sync SparkleShare folder with remote repositories.");
+ Console.WriteLine ("");
+ Console.WriteLine ("Arguments:");
+ Console.WriteLine ("\t -d, --disable-gui\tDon't show the notification icon.");
+ Console.WriteLine ("\t -h, --help\t\tDisplay this help text.");
+ Console.WriteLine ("");
+ Environment.Exit (0);
+ }
+
+ }
+
+
+
+}
Oops, something went wrong.

0 comments on commit ef235a1

Please sign in to comment.