Now builds on Linux
This commit is contained in:
parent
aefedc5e24
commit
490398feb9
|
|
@ -5,4 +5,20 @@ Building on Windows:
|
|||
c:\Python27\python.exe setup.py py2exe
|
||||
2. Copy the GUI folder from the root directory into dist\.
|
||||
3. The executable is in dist\lightningbeam.exe. You probably do need most if the DLL's, I haven't
|
||||
gone through them yet.
|
||||
gone through them yet.
|
||||
|
||||
Building on Ubuntu/Debian:
|
||||
1. In a terminal, type:
|
||||
./mkdebian
|
||||
cd debian
|
||||
dpkg --build lightningbeam ./
|
||||
2. Now there is a package, which can be installed however.
|
||||
3. To create a RPM package:
|
||||
sudo apt-get install alien
|
||||
alien -r lightningbeam.deb
|
||||
4. To create a Slackware TGZ package:
|
||||
alien -t lightningbeam.deb
|
||||
Building on Mac OSX:
|
||||
1. In a terminal, type:
|
||||
/usr/bin/python setup.py py2app
|
||||
2. This will create an .app package.
|
||||
|
|
|
|||
|
|
@ -0,0 +1,9 @@
|
|||
Package: lightningbeam
|
||||
Version: 1.0.0-alpha2
|
||||
Section: graphics
|
||||
Priority: optional
|
||||
Architecture: any
|
||||
Installed-size: 27000
|
||||
Depends: bash, python
|
||||
Maintainer: skycooler@gmail.com
|
||||
Description: Lightningbeam is an open-source animated content creation tool.
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
#! /bin/bash
|
||||
|
||||
/usr/bin/env python /usr/share/lightningbeam/lightningbeam.py
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
[Desktop Entry]
|
||||
Type=Application
|
||||
Version=1.0.0-alpha2
|
||||
Name=Lightningbeam
|
||||
Exec=/usr/bin/lightningbeam
|
||||
Icon=lightningbeam
|
||||
Terminal=false
|
||||
Categories=Graphics
|
||||
|
|
@ -26,6 +26,12 @@ import webbrowser
|
|||
#misc_funcs - miscelleneous functions in a separate file so as not to clutter things up too much
|
||||
import misc_funcs
|
||||
|
||||
#If we can import this, we are in the install directory. Mangle media paths accordingly.
|
||||
try:
|
||||
from distpath import media_path
|
||||
except:
|
||||
media_path = ""
|
||||
|
||||
#specify the current version and what version files it can still open
|
||||
LIGHTNINGBEAM_VERSION = "1.0-alpha1"
|
||||
LIGHTNINGBEAM_COMPAT = ["1.0-alpha1"]
|
||||
|
|
@ -326,7 +332,7 @@ elif svlgui.SYSTEM=="android":
|
|||
MainWindow.stage.add(root, 0,0)
|
||||
svlgui.FOCUS = MainWindow.stage
|
||||
layers = svlgui.Group(skipl=True)
|
||||
b = svlgui.Image("media/object_active.png",0,0,True,MainWindow.layerbox,16,1,True)
|
||||
b = svlgui.Image(media_path+"media/object_active.png",0,0,True,MainWindow.layerbox,16,1,True)
|
||||
layers.add(b)
|
||||
MainWindow.layerbox.add(layers,0,0)
|
||||
|
||||
|
|
@ -415,7 +421,7 @@ def add_keyframe(widget=None):
|
|||
MainWindow.timelinebox.draw()
|
||||
def add_layer(widget=None):
|
||||
root.descendItem().add_layer(root.descendItem()._al)
|
||||
layers.add(svlgui.Image("media/object_active.png",0,root.descendItem().layers.index(root.descendItem().activelayer)*32,True,MainWindow.layerbox,16,1,True))
|
||||
layers.add(svlgui.Image(media_path+"media/object_active.png",0,root.descendItem().layers.index(root.descendItem().activelayer)*32,True,MainWindow.layerbox,16,1,True))
|
||||
print root.descendItem().layers.index(root.descendItem().activelayer)*32
|
||||
#MainWindow.layerbox.draw()
|
||||
def delete_layer(widget=None):
|
||||
|
|
|
|||
|
|
@ -0,0 +1,30 @@
|
|||
#! /bin/bash
|
||||
|
||||
mkdir -p debian/lightningbeam/usr/bin
|
||||
mkdir -p debian/lightningbeam/usr/share/lightningbeam
|
||||
mkdir -p debian/lightningbeam/usr/share/applications
|
||||
mkdir -p debian/lightningbeam/usr/share/icons
|
||||
mkdir -p debian/lightningbeam/DEBIAN
|
||||
|
||||
cp lightningbeam debian/lightningbeam/usr/bin/
|
||||
cp lightningbeam.py debian/lightningbeam/usr/share/lightningbeam/
|
||||
cp svlgui.py debian/lightningbeam/usr/share/lightningbeam/
|
||||
cp misc_funcs.py debian/lightningbeam/usr/share/lightningbeam/
|
||||
cp lightningbeam_windows.py debian/lightningbeam/usr/share/lightningbeam/
|
||||
cp colors.py debian/lightningbeam/usr/share/lightningbeam/
|
||||
cp gpl.txt debian/lightningbeam/usr/share/lightningbeam/
|
||||
cp -r swfc debian/lightningbeam/usr/share/lightningbeam/
|
||||
cp -r GUI debian/lightningbeam/usr/share/lightningbeam/
|
||||
cp -r media debian/lightningbeam/usr/share/lightningbeam/
|
||||
|
||||
cp lightningbeam.desktop debian/lightningbeam/usr/share/applications/
|
||||
|
||||
cp media/icon_128.png debian/lightningbeam/usr/share/icons/lightningbeam.png
|
||||
|
||||
cp control debian/lightningbeam/DEBIAN/
|
||||
cp postrm debian/lightningbeam/DEBIAN/
|
||||
cp preinst debian/lightningbeam/DEBIAN/
|
||||
cp postinst debian/lightningbeam/DEBIAN/
|
||||
cp prerm debian/lightningbeam/DEBIAN/
|
||||
|
||||
echo 'media_path = "/usr/share/lightningbeam/"' > debian/lightningbeam/usr/share/lightningbeam/distpath.py
|
||||
18
svlgui.py
18
svlgui.py
|
|
@ -167,6 +167,12 @@ if sys.platform=="linux2":
|
|||
from GUI.StdButtons import DefaultButton, CancelButton
|
||||
from GUI.Files import FileType
|
||||
from GUI.Geometry import offset_rect, rect_sized
|
||||
|
||||
#If we can import this, we are in the install directory. Mangle media paths accordingly.
|
||||
try:
|
||||
from distpath import media_path
|
||||
except:
|
||||
media_path = ""
|
||||
#app = GUI.application()
|
||||
SYSTEM="osx"
|
||||
TEMPDIR = "/tmp"
|
||||
|
|
@ -2140,7 +2146,7 @@ class OverlayWindow:
|
|||
# Clear background to transparent black
|
||||
cr.set_source_rgba(0.0,0.0,0.0,2.0-(time.time()-startime))
|
||||
cr.paint()
|
||||
image = "media/logo-transparent.png"
|
||||
image = media_path+"media/logo-transparent.png"
|
||||
surface = cairo.ImageSurface.create_from_png(image)
|
||||
pat = cairo.SurfacePattern(surface)
|
||||
cr.set_source(pat)
|
||||
|
|
@ -2233,7 +2239,7 @@ class ColorSelectionWindow:
|
|||
pass
|
||||
group._onMouseMove = dummy
|
||||
canvas.add(group,0,0)
|
||||
im = Image("media/colors.png",skipl=True)
|
||||
im = Image(media_path+"media/colors.png",skipl=True)
|
||||
group.add(im)
|
||||
group.window = win
|
||||
group.canvas = canvas
|
||||
|
|
@ -2379,10 +2385,10 @@ class FramesCanvas(Canvas):
|
|||
if SYSTEM == 'osx':
|
||||
self.canvas.draw = self._draw
|
||||
self.canvas.mouse_down = self.mouse_down
|
||||
self.ackfr = GUI.Image(file = "media/keyframe_active.png")
|
||||
self.inackfr = GUI.Image(file = "media/keyframe_inactive.png")
|
||||
self.acfr = GUI.Image(file = "media/frame_active_tween.png")
|
||||
self.inacfr = GUI.Image(file = "media/frame_inactive_tween.png")
|
||||
self.ackfr = GUI.Image(file = media_path+"media/keyframe_active.png")
|
||||
self.inackfr = GUI.Image(file = media_path+"media/keyframe_inactive.png")
|
||||
self.acfr = GUI.Image(file = media_path+"media/frame_active_tween.png")
|
||||
self.inacfr = GUI.Image(file = media_path+"media/frame_inactive_tween.png")
|
||||
def _draw(self,cr,update_rect):
|
||||
for k in xrange(len(self.root.descendItem().layers)):
|
||||
FRAMES = self.root.descendItem().layers[k].frames
|
||||
|
|
|
|||
Loading…
Reference in New Issue