Code Monkey home page Code Monkey logo

bbox's Introduction

BBox

...something like dropbox based on subversion.

The concept

DropBox is quite easy to implement using a subversion repository. This code is just a multiplatform client that keeps some local folders updated and commits your changes.

Here, the list of main features:

  • Systray icon and menu with notifications of changes from remote users
  • Wizard for configuration and first checkout of the subversion repository
  • AutoCommit can be activated
  • List of logs and list of changes are nicely visible
  • Manage conflicts
  • FileSystem watcher for changes and commit notification

How to install/compile it

This application is based on Qt4. I have compiled BBox on GNU/Linux, Microsoft Windows and Mac OS X 10.5.x and 10.6.x.

Cloning the repo

It might be obvious but you need to clone this git repository in order to get sources compiled ;)

So open a Terminal (or use your favorite git GUI) and type:

(user)$ git clone git://github.com/bakulf/bbox.git

There you go, you're done. Then go in the right folder:

(user)$ cd ./bbox

now we can go on and compile.

Linux (ubuntu/debian)

(root)# apt-get install libqt4-dev make g++ qt4-make

then, this command should be enough:

(user)$ qmake
(user)$ make
(root)# make install

or these if you like to create/install .deb package:

(user)$ qmake && dpkg-buildpackage
(root)# dpkg -i ../bbox_0.1_i386.deb

Windows

I use Microsoft Visual Studio Express 2010 and then Qt4 for visual studio 2008. Then, I load some env variables using this script:

(cmd)$ vcvars32.bat

This script is under 'Microsoft Visual Studio 10.0\VC\bin' folder. Then,

(cmd)$ qmake -r -spec win32-msvc2010 CONFIG+=release
(cmd)$ nmake

then, the binary should be here: .\src\release\bbox.exe

But don't worry: I will provide a BBoxInstaller.exe quite soon.

MacOSX

You need to Download Qt Creator and the Qt SDK in order to compile the binaries. Then open the project in ./bbox.pro in Qt Creator Application you just downloaded, and click build. You'll have a new folder called src-build-desktop. Inside there you'll have a bbox.app Mac OS X bundle.

Right after that if you want to package the software in order to distribute it, you'll need to open a Terminal tab or window and type

(user)$ cd /path/to/git/bbox/src-build-desktop
(user)$ macdeployqt bbox.app

What this command does, is basically include Qt frameworks needed for the application to run, so that those who don't have Qt SDK installed can run this too. Now you can both install and distribuite the build.

How to install the server

The Web is full of excellent tutorials about how to install SVN (subversion) + Apache + mod_dav. I don't want to write here how to do this step. But soon-ish I will provide a couple of good URLs about this procedure.

Contributing

  1. Fork it.
  2. Create a branch (git checkout -b my_bbox)
  3. Commit your changes (git commit -am "Added Snarkdown")
  4. Push to the branch (git push origin my_bbox)
  5. Create an [Issue][1] with a link to your branch

bbox's People

Contributors

carl0s avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

bbox's Issues

No svn authorization info saved

I've just built 0.1 version and setup svn access with http basic auth. After checking out (what was OK), I cannot sync because of http 401:

OPTIONS of 'http://...': authorization failed: Could not authenticate to server: rejected Basic challenge

After delving into the problem I see that in the subversion authorization file:
~/.local/share/data/BBox.n3/BBox/bboxSvnConfig/auth/svn.simple/xxx
there's no password section. After copying the proper file from my ~/.subversion/auth/svn.simple/xxx with the section, everything is OK and I can work.

Windows client is not starting

Hi,

just tried to get you Windows client up and running, but unforntunately, it won't start here on Windows 7.
The error code is (roughly translated) "The application couldn't be started correctly (0xc000007b) \n Click on "OK" to close the application"
I tried various compatbility settings, but nothing worked. Any ideas?

Regards,
Jan

PS: Windows7 Enterprise (64Bit)

History View

Bel lavoro!
che ne pensate di aggiungere una vista con lo storico e le info del repository?
numero revisione, autore, stato, data commit etc etc

NOK svn rm in autocommit

When I have autocommit option enabled and I remove a file, I have to do that twice in order to get it properly removed.

autocommit

inserting autocommit files as a preference.

readme

a readme written following the github syntax, about the project, the installation, usage, these stuffs...

Compiling bapplication.cpp failed

During the make, I encountered an error:

bbapplication.cpp: In member function ‘void BBApplication::splash()’:
bbapplication.cpp:80:22: error: ‘usleep’ was not declared in this scope
make[1]: *** [.obj/bbapplication.o] Error 1

I had to add the following:

#include <unistd.h>

Kubuntu 12.10 - Quantal alpha 3
KDE 4.9

Windows client ignoring filenames with accented characters

In Windows 7 32bit, only files with "english" filenames are commited into repository (synced), while those with special characters (code page 1250 in my case) are ignored (even not added to SVN). I thought VS 2010 uses unicode encoding under all conditions, so I am confused, why this could be possible - but I experience it.

Another minor issue I have with BBox: when I want to delete any file, which was commited before, it is almost impossible, becase autocommit feature updates it back from the repository. The only way I found is to commit this change (deletion) by separate SVN client.

touching file, fails.

Right after the first checkout, touching a file doesn't work as a commit. The app is idle like no change to the filesystem is done yet.

Typo in browse for svn binary

It's been written browser while it should be browse :)

wouldn't it be better to move that into an advanced setting window? It looks scary for average user to mess up with binaries, before setting up interval or autocommit thing.
Or at least let's put an instruction line like "you probably don't want to change this..."

Installing BBox on (X)ubuntu: Conflict with ps2eps

I just tried to install BBox on Xubuntu 11.10. Unfotunately the installation failed as there is already a file /usr/bin/bbox which belongs to the package ps2eps 1.68-1.
After removing ps2eps installing BBox worked without problems.

macosx focus

On Mac OS X there is a focus issue so you cannot get the right focus on bbox windows ever. :(

trouble with renaming

I have one directory in a Bbox sync dir on 2 computers. When I rename this dir on the first computer, Bbox on another computer thinks, the renamed directory is new, then it downloads them and uploads the unrenamed directory to the server. The first computer downloads the unrenamed directory from the server. Then I have the two same directories in a Bbox sync directory on both computers, first with the old name and second with the new

README.md

= then, this command should be enough:

= (user)$ qmake
= (user)$ make

= (root)# make install

  • or these if you like to create/install .deb package:
  • (user)$ qmake && dpkg-buildpackage
    
  • (root)# dpkg -i ../bbox_0.1_i386.deb
    

First window can't be close on OSX Lion 10.7.2

After installing bbox.app and launching, if one want to open the directory to sync, the opened window won't close.
You are tottaly blocked, you can not either select a directory nore cancel the operation.

Thanks !

Gabriel

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.