MortalPowers, Inc. Logo
<< Previous Viewing 6-10 of 178.

New Project: Gitosis Web

(by PeEll)2010.02.21

Gitosis is a git repository management tool. It has features that make multi-repository, multi-user environments much simpler. The way you access the configuration is through git. You make configuration changes in your working copy, and then push them to the repo. These changes are then processed by git hooks to create/manage the repositories and keys.

One of the downsides of gitosis is that all administrators have equal permissions to add/remove keys, and there is no mechanism for users to manage their own keys. In response to this I have begun building Gitosis Web, a PHP frontend to gitosis that adds some extra capabilities and ease of use.

Many people are comfortable with Gitosis, and that's great. This tool doesn't replace Gitosis or say there are any issues with Gitosis, but simply that some workflows could benefit from an additional frontend.

Check out Gitosis Web on github

Gitosis Web Readme

Gitosis Web

Gitosis Web is designed to is designed to be a layer on top of gitosis. Leveraging PHP and extra properties stored in the gitosis configuration to allow and administrator to control the entire file, and to allow individual users to manage their keys.

Install Instructions

To install, you will need working installations of git, gitosis, php, and mysql. This system has been tested under linux, but might work on windows too (Assuming you have git in your PATH). Once you have this, make sure your apache user (probably www-data) has a checked out copy of gitosis-admin, and that it has a key setup with the gitosis server you want to administrate. You should add a "name = x" row for your adiministrator to the [gitosis] section, and an "x = pass" section to specify the cleartext password.

Once you have it setup, you load the web interface, specify the path of the gitosis-admin working copy, and provide a username and password. From there you can make changes to the gitosis configuration, or add keys to already specified users. Each user should get a group looking like [group user-stephen].

Future Plans

At some point in the future, I hope to add the ability to manage users without tweaking the gitosis.conf file, or allow users to manage their own keys. Allowing project owners might be a cool idea, but might make the interface too complex.


comments | permalink

As modern web development methodologies continue to improve and optimize our workflows, one of the workflows that has risen to the top is a development deployment model using git.

Making it Secure

Before you do any of these steps, make sure you add the following to your .htaccess, and that URL Rewriting is working in your apache setup.

#Secure GIT Deployment Methods
RewriteRule /?.git/ - [R=404,L]
RewriteRule /?.gitignore - [R=404,L]

Without doing this, anyone will have read-access to all of your code, and your entire source history.

Use git

This guide assumes a lot of knowledge about source control, management, and is not a guide to git. This guide assumes you can figure those parts out, but that you want to know more about one specific workflow that works very well in my opinion.

The main idea behind this workflow is that you will have a central repository, a development version of the software, and a published version of the software.

Convert something else to git

If you want to keep any history, the first step is going to be to convert the source control history to git. If you are using cvs, you will need to convert to SVN, and then to git. If you use SVN, simply use git to do a git svn clone of the repository somewhere on your local system. From there I recommend you move the .git folder to the remote production server, and make a copy in the development folder. If you go into each of these folders and type git status, you will see any differences that have not yet been committed to the repository, but you will be ready to make and receive changes.

Now that you are setup, time to develop

From there, things are relatively simple. Simply make any changes you want in your development environment. When you are finished with your changes, and they have been tested to your satisfaction, commit the changes, and push them to the repository. You can then enter your production server, and pull the changes from the repository. You can also simply pull directly from the development server, but organizations I have worked with tend to like a 3rd copy of the source, somewhere separated from the hosting environment.

If you want to, you can make emergency or urgent changes directly on the production, following any existing workflow you have for ensuring something is not broken. When these changes are complete to your satisfaction, simply commit and push them, and do a pull from the development environment.
comments | permalink

An error I received after trying to update one of my Kubuntu Karmic Koala installations to the latest KDE 4.4 was plasma desktop has no installation candidate.

The solution was to recheck all of the repositories listed in /etc/apt/sources.list and the files in /etc/apt/soruces.list. I previously had a kubuntu beta repository. I exchanged this for the correct stable repository, updated, ran an upgrade. Additionally, I needed to run sudo apt-get install kubuntu-desktop for the appropriate packages containing "plasma-desktop" were installed.

You can actually start plasma-desktop from Kwin by pressing Alt+F2 and typing "plasma-desktop", or it can be automatically be restarted by switching to one of the virtual consoles and typing restart kdm, but beware this will kill any gui applications you have running.


comments | permalink

File Menu Missing in Dolphin

(by PeEll)2010.02.11

One of the most annoying things I have encountered with Dolphin is the fact that there is a keyboard shortcut to remove the menu bar, as well as a button to remove the menubar, but there is no way to get it back in the same way. You can remove the menu bar by hitting the keyboard shortcut "Ctrl+M", or by right clicking on the menu bar and clicking "Hide Menubar".

How to get it back

For me, finding out how to get it back was a frustrating experience. My first problem was that I didn't know KDE called it the "Menubar", when I looked in the keyboard shortcuts, or when I googled online, I couldn't find anything relating to the dolphin file menu. The second usability problem I see is that right clicking on the title bar, or any of the toolbars (which take the place of the menubar at the top of the screen after it is removed don't give you the option to bring it back.

It was finally after I had practically given up looking for the menubar that I right clicked in the MAIN pane of the screen. This context menu then provided me with both the appropriate keyboard shortcut, as well as a button to bring the menu bar back.


comments | permalink

Recently released as a part of Gmail, Google Buzz combines some of the features from twitter, facebook, gmail, and google wave into a new form of communication. When I launched gmail early this afternoon, I was greeted with an introduction to Buzz. From there it told me that I was already following 22 people, only one of which had posted anything. My first actions were to make a post, and to connect Google Buzz with "my activities on other sites", which I did with mortalpowers.com, and hexslayer.com. It somehow began importing articles from the RSS feeds of both sites. It says it only looks for my activities on connected sites, but I doubt it has that level of intelligence. It's hard to test though, as I am typically the sole poster on both sites.

The confusing thing is that everything Google Buzz does is already possible on a plethora of other sites. It will be interesting how it differentiates itself, or if it simply complicates and confuses the wide landscape of social tools already in use by the masses.


comments | permalink