CC-BY for hardware / repository structure for HW/SW project - Page 1
Forum section: electronics / general

author: 0xdeadbeef
author_rank: Super Contributor
timestamp: March 19, 2014, 06:47:33 pm
content: I wonder if anybody here used theCC-BYlicense to release an open hardware project.It looks pretty likable to me. Not a lot of legal stuff, not a lot of restrictions, emphasis on fair use and giving the author credit.Any opinion on this?2nd topic, somewhat related: I want to release three source code trees (PC GUI, µC main software, µC bootloader) plus hardware documents (schematic + layout, gerber files etc.) on GitHub/BitBucket/whatever. It would be convenient for me to put all stuff in one common repository. Yet I wonder if wouldn't be better to have at least two repositories (hardware and software) or even separate repositories for the different software parts. Because if I always need to tag the full repository, every small update e.g. to the GUI would mean a new tag for the whole project - which again would lead to the assumption that also e.g. the bootloader from previous tags was be outdated - even if it never changed.The problem is that I understand that for GitHib/ButBucket one project means one repository and two repositories means two projects. Which would result in unintended clutter as there would be two Wikis, two Bugtrackers etc.In other words: in an ideal world, I could have subprojects inside the main project with separate tags. But I guess there's no way to achieve this with GitHub or BitBucket.Any ideas?

author: GiskardReventlov
author_rank: Frequent Contributor
timestamp: March 20, 2014, 04:00:22 pm
content: The topic of "what license" will get you many different answers. It comes down to a personal choice. My choice would be public domain and lots of others on github do same.As for organizing your project, why not try each one of the scenarios you outlined and see which one works for you and your project. You might also look at other projects that are similar to yours and see what they've done. And you can always ask github this sames question.

author: zapta
author_rank: Super Contributor
timestamp: June 12, 2014, 10:47:35 pm
content: Quote from: GiskardReventlov on March 20, 2014, 04:00:22 pmI looked at the public domain option at creativecommons.org but it involves some formality, so I ended using Apache 2 (for hardware and software). I wish cc would have a license with no attribution, no share alike and no commercial limitations.As for a single vs multiple repositories, having all the files (hardware, software, docs, BOM, etc) in one directory is more community friendly IMO.

author: BloodyCactus
author_rank: Frequent Contributor
timestamp: June 13, 2014, 04:41:09 pm
content: for my pinball control board system I've got GPLv2 for the software and Cern OHL for the hardware/schematics etc. its up on github

author: 0xdeadbeef
author_rank: Super Contributor
timestamp: June 13, 2014, 05:16:50 pm
content: Quote from: zapta on June 12, 2014, 10:47:35 pmHm, theCC-BYlicense looks very informal to me and has no commercial limitations.Quote from: zapta on June 12, 2014, 10:47:35 pmI think I found a solution that's good for me to handle and also user friendly. It's a git hosted on Bitbucket with three branches for hardware, software and documentation.So I can update each branch separately and it's still one repository. Seehere.

author: zapta
author_rank: Super Contributor
timestamp: June 13, 2014, 06:12:24 pm
content: Quote from: 0xdeadbeef on June 13, 2014, 05:16:50 pmThis imposes attribution requirements. I want my stuff to be really free without having to track linage of derivative works.Sent from my Nexus 5 using Tapatalk

author: gxti
author_rank: Frequent Contributor
timestamp: June 13, 2014, 06:29:34 pm
content: Sounds like you want Creative Commons Zero then:https://creativecommons.org/publicdomain/zero/1.0/Some countries believe in your rights so badly that you no longer have the right to waive your rights. Ironic. CC0 has the legalese to grant the maximum license possible in such cases. Description of what it does here:https://creativecommons.org/about/cc0

author: zapta
author_rank: Super Contributor
timestamp: June 13, 2014, 06:55:08 pm
content: Quote from: gxti on June 13, 2014, 06:29:34 pmYes, that's what I was referring to. Follow the link, it requires a formal process, not just linking to as a typical open source license. That's why I use Apache 2.

author: gxti
author_rank: Frequent Contributor
timestamp: June 13, 2014, 10:17:19 pm
content: That's not a "formal process", it just generates some HTML metadata for people who are publishing content on the web as opposed to source code, so that it can be automatically indexed. You can copy the text of the license and plop it into a file like any other license. There's even a FAQ about how to format it for source code.That said, there's nothing wrong with the Apache license, I use it myself. But it does require that derivative works retain any copyright notices you place:QuoteIn that respect, other permissive licenses (MIT, BSD, ISC, etc.) are similar. If you take it completely literally, it's sufficient to just not place any copyright notices and users will no longer be obligated to retain them. But it may not be as legally clear that it is an approved derivative if there is no clear entity responsible for issuing the license to begin with.

author: zapta
author_rank: Super Contributor
timestamp: June 13, 2014, 10:29:37 pm
content: Quote from: gxti on June 13, 2014, 10:17:19 pmThanks, I will take another look at it. I saw that online form with name, etc they have and assumed they keep some central registry.Quote from: gxti on June 13, 2014, 10:17:19 pmI used open source while working for a large corporation and all those tiny restrictions are pain when you need to get the legal clearance to use them. That's why I want my stuff to have as less restrictions as possible (and avoid GPL like the plague ;-))..Any other permissive license that does not require to retain the copyright notice?

author: abaxas
author_rank: Regular Contributor
timestamp: June 17, 2014, 09:47:40 pm
content: Just make it public domain and stop faffing about.

author: PointyOintment
author_rank: Frequent Contributor
timestamp: September 04, 2014, 05:19:58 am
content: Quote from: 0xdeadbeef on June 13, 2014, 05:16:50 pmI have almost no experience with version control, but that looks like a highly nonstandard way of using branches. Is it working well? Can you still use (sub-)branches for their intended purpose? I have some projects I'm starting that have similar requirements.

author: 0xdeadbeef
author_rank: Super Contributor
timestamp: September 04, 2014, 04:02:02 pm
content: Honestly I "borrowed" the idea from someone else - but don't ask me from where - I simply stumbled over this approach while searching for solutions.Besides, this is a small one man project, so "real" branches inside one of the three main branches are not probable. Then again, I don't see why they shouldn't work any more.For me, this approach works pretty well. The only drawback is that by switching branches, the files/folders in my local repository appear/disappear. So when I switch from software to documentation, the folder "software" and its whole content disappears from my local git/ngen folder, and the folder "docs" magically appears. This feels weird and makes it impossible to work on the local repository for e.g. software and hardware at the same time.Then again, this is not really an issue for me as my software development folder is not the same as my local repository folder. When I feel I should put changed files in the repository, I switch to the "software" branch, synchronize my development folder and the local repository with "Beyond Compare" and then commit/push from there.

author: alex.forencich
author_rank: Frequent Contributor
timestamp: December 01, 2014, 07:39:00 pm
content: Quote from: 0xdeadbeef on September 04, 2014, 04:02:02 pmCouple of things:1. don't do that if possible (orphan branches), subfolders are generally fine2. possibly look in to git subtree (you can have a separate repo for each one, then combine all three in one repo and pass commits back and forth, seehttps://github.com/alexforencich/verilog-ethernet/tree/master/libfor an example)3. if you really like orphan branches,https://github.com/git/git/blob/master/contrib/workdir/git-new-workdir

author: PointyOintment
author_rank: Frequent Contributor
timestamp: December 06, 2014, 02:55:11 am
content: Quote from: alex.forencich on December 01, 2014, 07:39:00 pmThat's quite interesting. I found some subtree tutorials:https://medium.com/@v/git-subtrees-a-tutorial-6ff568381844https://hpc.uni.lu/blog/2014/understanding-git-subtree/http://makingsoftware.wordpress.com/2013/02/16/using-git-subtrees-for-repository-separation/http://blogs.atlassian.com/2013/05/alternatives-to-git-submodule-git-subtree/I will look into this more for my own projects.

author: bitwelder
author_rank: Super Contributor
timestamp: March 22, 2015, 07:39:46 am
content: I'm following (and I've backed) the USB Armory project (http://www.inversepath.com/usbarmory.html) and while they originally put it under GPL2 license, they recently changed to CERN Open Hardware license (http://www.ohwr.org/projects/cernohl/wiki), as it's more appropriate for the hardware.