TKLDEV Setup and Note taking

TKLDEV is the build system for TurnkeyLinux applications.  It is very capable and somewhat easy to work with.

I am wanting to build some more capabilities into TKLDEV and so today I have started again with the process of working with it and shold be able to proceed with modifying it.

To do so,  I installed from the TurnkeyLinux Hub, a TKLDEV Micro instance.  As the name holds, it is a pretty small build.  1 GB ram,  10gb of HD space.  Cost is not low:  About $12 per month, but it can be killed pretty easily and built again.

First Task:

Working through the lack of documentation with TurnkeyLinux.

This can be quite problematic.  However, if you read, and reread, forum entries, look at github documentation, and test and try things, things can work out.

There are several steps required for actually getting BuildTasks to start working.

  1. Get VMWare's OVF Tool working 
    1. Login to VmWare
      • IE: my.vmware.com
    2. Download the tool to your computer
    3. Login via FileZilla to your TKLDEV appliance
      1. Ideally you will have a "downloads" or similar folder for files
        upload your OVF Bundle File to that directory.
    4. In Shell, be sure the file has chroot 755 permissions 
      chmod 755 VMware-ovftool-(VERSION.and.control.name).bundle
    5. Run the install code on your TKLDEV server inside SSH  (use the correct syntax)
      ./VMware-ovftool-(VERSION.and.control.name).bundle
    6. Run the Program
    7. Go through multiple pages of "licensing code"  (Accept All)
      1. accept the Terms at the very bottom of the licensing agreement
    8. Then Create a Config Folder and Copy the Contents as outlined here:  
    9. https://github.com/turnkeylinux-apps/tkldev/blob/master/docs/advanced/optimized-builds.rst
      Configuration & Setup
      • cd buildtasks/
        mkdir config
        cp config.example/* config/.
      • run bin/vm-setup
  1. Interpret the correct Syntax inorder to get various BT-s working
    1. Hint:  actually type "./" where instructed to do so.
    2. ie: "./bt-iso"  or "./bt-vm"

Issues:
Verification of ISO's  (work through this)

Building from TurnKey ISOcd 

Note that if there isn't already a Core ISO and matching hash file in /mnt/isos buildtasks will download it from the TurnKey mirror.

When that's finished, you should find an official Core TurnKey ISO (and matching hash file) in /mnt/isos/ and a Core container build in /mnt/builds/container/

Turnkey Mirrors are sometimes downloaded rather than ISO simply generated  (see note 2 lines above)

Building from your own ISO

cd buildtasks/
./bt-iso new-app


Once that runs, simply run the relevant bt script. Don't forget to install the relevant dependencies.

./bt-vm new-app-14.2-jessie-amd64

ToDo's:

  • Get Git Working
  • Make Variations to build scripts
  • Practice, Practice Practice
  • Get Shortlist of "New App Setup"

 

Turnkey Mirror Links

 

Assorted Links of note:  

 

 

Issues at hand:  

  • Cloning
  • Making New Code
  • Using the new code
  • Integrating into the repository or simply using the repository as a base, but using local changes

Update Note 10-22-2019

  • I have gone through the OVFTOOLS notations above to be clear as to process.
    FKIT has made a good video here:  https://www.youtube.com/watch?v=vseorvzwu-k
  • I have started forking my own repositories and working on new builds.  Doing one for Joomla3 right now.  Forking TKLDEV and Buildtasks and bringing them in to see if they work with few changes.  First MAKE is running now.
  • Did also upgrade my Putty Application to 64BIT and current.
  • Waiting for the build as we speak.  Takes a while on a small server.
  • Once build it is important to look into the /mnt folder for names created, but also to understand the bt-vm command above for the first build.

Print Email

Wildnet Blog Accordion

Recent Work with a VPN router

Recent Work with a VPN router

Sometimes a small project is not so small.  For some reason my Odoo Server does not pass through my Comcast Home system at all well.  Solution was to put a dedicated PC into my office... but, I didn't want to just have RDC available for all comers (who sure came fast).

I remembered that I had a VPN equipped router.  I won't say the model.  Anywy, the company who made it was aquired and the aquiring company, as they are want to do, killed most support links about the router.  Turns out there were several other routers that used the same software for access, and yes, I got it too work.  Honestly, I think it is just a small step in security, not a big one.

So I was thinking, I should rewrite the firmware on the router....  I should rewrite lots of firmware on routers..  Big project but might be worth the effort.  Several people had wanted to go Open Source on VPN through routers.  The trick will be in making it work.

Might be a project coming up.  Things are working for now despite the EOL from the router builders new owner.  

EOL is one of the LEAST SUSTAINABLE parts of IT and it needs to change.

Read more

Using Git and TKLDEV to build your own customized Turnkeylinux (etc) resource set

Using Git and TKLDEV to build your own customized Turnkeylinux (etc) resource set

Learning anything takes some practice.  I have been hoverting around my reentry for a bit now and went in for a landing.  I am going to do my best to build a customized set of builds based upon the Turnkeylinux set of apps, but one which is more flexible and more customizable to my own needs.

Here are some of my process notes.  It seems to be going pretty well.

  1. Sign on to hub.turnkeylinux.com
    1. Set up a Micro Server via the hub to run TKLDEV
  2. Sign on to Github
    1. Go to your https://github.com/turnkeylinux-apps
      1. Choose the Core App
        1. Fork it into your own repository set (this will be suggested by Github)
      2. Choose the TKLDEV App
        1. Fork it into your repository set
      3. Choose someother App you want to work with  (I will do Joomla and Odoo for now)
        1. Fork it (or them separately) into your repository set.
    2. Go to your Repository Root
      1. For each new repository
        1. Make a new "Branch" with some operative name for your work
        2. Option - but recomended
          1. Make the new branch be the "default" branch for you (rather than "master" being default)
  3. Log into your TKLDEV Box via SSH - ie Putty.  Iin my case the TKLDEV generated on hub.turnkeylinux.com)
    1. cd /  (out of /root)
    2. cd turnkey  (1 and 2 together could be "cd /turnkey")
    3. cd products (1 and 2 and 3 together could be "cd /turnkey/products")
    4. Clone each of your repositories (using the -b default_branch_name) to your products directory using a command like the following
      1. git clone https://github.com/your-user-name/your-turnkeyapp-repository -b default_branch_name
      2. cd (from products) to one of the new cloned directories
      3. issue the "make" command
    5. If you want to remove and start over I use the following
      1. rm -rf directory_name
      2. I may have to "restart" the server if I cannot complete because some chroot is running after a "make command"..  After reboot again use the rm -rf directory_name command to clear it.
  4. I am right there now.  I will start working with Git on my personal branches and see what modifications I can run
  5. My specific focus will be on TKLDEV modifications.  
  6. If I want to use those modifications actually "inside" my operating TKLDEV appliance  I will likley need to Link the Code directly - which means this is a Line of my TODO list.
  • Now to BuildTasks
  • Forked https://github.com/turnkeylinux/buildtasks into my repository set -ie https://github.com/my-user-name
    • Created a Branch - my name
    • Made the Branch "Default"
  • Opened GitHub Desktop
  • Cloned https://github.com/my-user-name/buildtasks into my GitHub Desktop
    • copied bt-xen into bt-mine
    • copied /patch/xen/ into /patch/mine  (min is a pseudonym)
    • Made a Commit with Summary and Detail Annotation
    • Pushed the Commit with Summary and Detail Annotation
  • Opened my TKLDEV Machine with PUTTY (SSH)
    • Navigate with
      • cd /turnkey
    • dir (to be sure)
    • rm -rf buildtasks
      • that removed the buildtasks directory so that I can clone my repository
    • git clone https://github.com/my-user-name/buildtasks -b my-branch-name
      • technically the branch part should be covered automatically as I set it as default in github directly, but I try to be safe and specify the branches explicity.

That takes me to where I am now.

I need to start working on my Build Processes next.  Also, quite explicitly, I will need to overtly change the "include" command for buildtasks if I go to make new TKLDEV systems that use my buildtasks.  However, it seems easy enough just to change it manually as I have  just done to my working TKLDEV server.

  • 3 Changes made in Buildtasks (XEN) directory
  • Committed Changes
  • Pushed Changes
  • Went to Putty:  Git Pull  (3 Changes Made)

Lets Test a build

UPDATE:  10/23/2019

The Build process worked well.  I then had to wrangle (again) with network settings inside of my Server Build, but those were not related specifically to the TKLDEV process.

From here I will move the changes I made into my own BT-process and see if I can replicate my results and also get the few more tweaks for my server build integrated as well.

I need to understand a-bit about the Patching process and how it applies to files outside of build tasks  (ie, small changes to the Core build).  I also will need to test various updates from REPOS and TKLBAM to see that I can have my changes from TKLDEV stick.

All for Now.  Very excited about the project.

(Postscript)

To build in XEN, ie (check /mnt/isos for valid build names after)

./bt-iso appname-x.x-stretch-amd64

followed by

./bt-xen appname-x.x-stretch-amd64

Read more

MageBridge removed as well

MageBridge removed as well

Looking back at my notes, I started working with Magebridge (from Yireo) in at least 2013 and perhaps earlier.

It was a great idea fraught with difficulties.  Its purpose was to bridge Magento into Joomla

Magebridge discontinued by Yireo a few years ago now, but on my side I just disabled it.  Yireo discontinued because of the forthcoming Magento 2 and all the changes there.  I am not convinced it could not have been brought forward, but I think the greater issue was the extreme complication the program was itself.

Today, I gave it one last try.  Nope...  no go.  And now I am free.

Everything has been removed (uninstalled yes) including Compnents, Plugins, Packages, Libraries, Menu Items, Modules etc etc etc.  As the attempt also disabled the Magento server I also have a full restore running there as well (to last night's state).  I will likely kill the Magento server next.  Also not worth the hassle.

The site is fast.  I did resurrect for the time being Dynamic404 from Yireo (Yireo has gone away from all things Joomla).  It seems to have some good rerouting and be able to redirect what it cannot find in the overt redirection tables (lets see how that goes).

This is not, of course, big news, but it is news about Old and New.  I have long wanted everything to stay functioning, but sometimes we have to clear the decks...  They are clear now and we won't try that again.  (I log that I spent almost 4 hours on this attempt this morning).

And so it goes.

Read more

Magento Sunset

Magento Sunset

I have been running Magento since about 2012 with 1.3x in my memory bank. Up to 1.9x now and really just using Magento as a repository now.

Magento 2.x (2.3x to be precise) is here.  It does not work, at present, with this CMS system so I have a linkage taking place through Filemaker from J2Store to Magento and by extension to Odoo.

I will quite likely just take the Magento system down.  It will not be supported with updates after this coming June and the time investment of getting 2.x running and keeping it running does not seem available just now).  We will see.

Anyway, for now, I am going to start redirecting the URL's to land into this system.  Lets see what a pain that becomes.  Likely worth the effort but also perhaps now.

Sad, but Magento was aquired by Adobe and like Odoo, they are making it more and more difficult to use it as a Open Source software.  Not that either are impossible, but the reigns are steering the team towards privation.

Somewhat the nature of things these days I will say.

All good software, just a bit too time intensive.

Read more

Magento - Odoo - OCA Connector

Magento - Odoo - OCA Connector

This is a very functional system which brings the ability to work the "backend" of Magento by actually building and purchasing items you sell,

  • Functionally you get all of the aspects of Odoo, including CRM, Product Management and more
  • You also get the great E-Commerce capabilities of Magento, and its increditble extensability.

(to do:  more detail)

Read more

Joomla3 Appliance - Powered by TurnKey Linux