Can't beat the simplicity of running Go applications. It's funny because running a compiled binary is so incredibly basic to computing, and yet 90% of the time installing a new shiny toy in a server involves dealing with 342525 dependencies, half of which broke because god knows what dependency wasn't targeting the right version. And you sit there debugging dependencies and errors and pulling your hair for two hours, trying to get someone else's mess to work, wondering how did we get this so wrong.
A lot of Java software is "(1) download the jar file, (2) java -jar thefile.jar". Agree it's good for the user, but when people talk about distributing a statically-linked program the "what about security updates" question invariably comes up.
Yes. Digging up dependencies is the worst. Managing another fucking build tool is the worst. To be honest, anything short of clicking a thing is the worst. Because there's no reason it can't be as simple as clicking a thing.
I've always believed that 100% of all dependencies should be included in projects. Whether that is raw source code, amalgamated source code, static libs, or dynamic libs I don't care. Give to me the things I need to run and/or build your project. Don't make me hunt shit down.
It's mostly a result of trying to avoid duplication. It's a non-issue for a server running one service but quite relevant on, for example, a dev workstation with dozens of projects or for smaller tools – imagine if every system command brought it's own dependencies.
But the trend seems to go towards sacrificing disk space for isolation, i. e. NPM which makes it more or less impossible to use a system-wide 'node_modules'.
I've been using Gogs now for a few months and can't recommend it enough as opposed to GitLab. It does have some rough edges (for example the many instances where its CSRF protection feature misfires), but generally it's a very solid and performant git frontend. Although a plugin or widget system would be nice, it was also easy to extend the Gogs UI simply by editing its very straight-forward template files.
They should. Github obviously spent countless hours perfecting their UI. Other apps shouldn't be allowed to copy it. (I have no affiliation with Github, other than that I'm a developer and respect the hard work they've put into their product.)
We downloaded and installed Gogs, Gitlab, and Bitbucket. I liked Gogs the best, but Gitlab seemed more enterprise-y, and Bitbucket had an issue we could never figure out. We're trying to replace TFS, so we'll probably end up with Gitlab.
But since I was the one doing the installing, I sure wish we'd go with Gogs. It was 5 minutes from start to finish.
For extra ease and security (two things not often found together!) try setting it up in a Sandstorm server, works with one click and is sandboxed from the rest of your server. https://sandstorm.io/
Been using this for a while now and very happy with it. I decided to stop using Github for personal projects due to political disagreements with the company and the fact that git should really not be centralised.
Gogs has probably 95% feature parity with Github and it is a lot faster (is Github still Ruby? That would explain it ...)
How can you compare speeds when you can't run GitHub on your setup? Running a multimillion user service is vastly different from running your own personal server, right?
Why would ruby explain it? Do you think most of the time you spend waiting for GitHub pages to load is due to CPU load on the application layer? Why would we expect this to be the case?
I have been using gogs at home for a few months now as well. It has been great for all of my needs. Like version controlling little python scripts I am playing around with, or my resume, term papers, etc in LaTeX. Stuff that will never be public that I would like to have a little more control over.
I use gogs and github. Both are great git backends, featuring simple collaboration management. The issues and wiki however feels too primitive to be useful. I can't really decide if they are already bloated or if they have not reached MVP yet.
Anyway, I would love to see better integration on both with their mandatory complements, such as kanban, CI, ...
Kudos on the polished project release. I am relatively new to go, and I am curious about the technology stack behind such a webapp. How does it work under the hood?
- How do you develop such web apps with html, css, javascript, go, etc. all interacting with each other?
- How are static assets packaged in a single binary?
- Any simple tutorial or stack walkthrough you would recommend me reading?
For everyday software this is fair, but is software made FOR DEVELOPERS. All things being equal between two solutions, I am going to take the one implemented technology I know and can hack on easier.
Also, many of the most popular solutions in this space are written in what some people would call "low performance languages", since the author here is using a "high performance language", its just good marketing too.
I thought it was because of "Go"ogle but then I clicked though the link. It's pretty interesting that they've launched this because I feel like this is GitHub's bread and butter for enterprise.
Do you know any Continous Integrations which fits well with Gogs?
Something small, easy to setup, easy to use. Just as Gogs is.
All I want - integration with git/gogs (webhook?), status page (with detailed build/test info, especialy for fails), status image (for readme in gogs).
I use gogs at home, but run Gitlab At work - it just has so more many more features and far more customisable - also Gitlab CI rocks, it seems to scale really well - 60 active developers on a tiny vm and its lightening quick and we can easily do more than 100 releases a day.
[+] [-] Mahn|10 years ago|reply
> 1. Extract the archive.
> 2. cd into the directory just created.
> 3. Execute ./gogs web and you’re done.
Can't beat the simplicity of running Go applications. It's funny because running a compiled binary is so incredibly basic to computing, and yet 90% of the time installing a new shiny toy in a server involves dealing with 342525 dependencies, half of which broke because god knows what dependency wasn't targeting the right version. And you sit there debugging dependencies and errors and pulling your hair for two hours, trying to get someone else's mess to work, wondering how did we get this so wrong.
[+] [-] gnuvince|10 years ago|reply
[+] [-] forrestthewoods|10 years ago|reply
I've always believed that 100% of all dependencies should be included in projects. Whether that is raw source code, amalgamated source code, static libs, or dynamic libs I don't care. Give to me the things I need to run and/or build your project. Don't make me hunt shit down.
[+] [-] sandGorgon|10 years ago|reply
[1] https://github.com/gitbucket/gitbucket
[+] [-] matt4077|10 years ago|reply
But the trend seems to go towards sacrificing disk space for isolation, i. e. NPM which makes it more or less impossible to use a system-wide 'node_modules'.
[+] [-] incepted|10 years ago|reply
... as long as you downloaded the right binary.
[+] [-] danellis|10 years ago|reply
Not just C and C++, either -- Python, Ruby etc software could be shipped as statically linked executables.
[+] [-] Udo|10 years ago|reply
[+] [-] mh-cx|10 years ago|reply
Gogs is a great relief.
[+] [-] ddon|10 years ago|reply
[+] [-] qz_|10 years ago|reply
[+] [-] tschellenbach|10 years ago|reply
[+] [-] joeblau|10 years ago|reply
[+] [-] merpnderp|10 years ago|reply
But since I was the one doing the installing, I sure wish we'd go with Gogs. It was 5 minutes from start to finish.
[+] [-] sytse|10 years ago|reply
[+] [-] wsh91|10 years ago|reply
[+] [-] aaronpk|10 years ago|reply
[+] [-] matheweis|10 years ago|reply
Main reason was the resource utilization of GitLab was just too high. iirc, it was actually the CEO of GitLab that recommended the switch... ;)
[+] [-] FiloSottile|10 years ago|reply
[+] [-] pellucide|10 years ago|reply
[+] [-] idoom|10 years ago|reply
[+] [-] empressplay|10 years ago|reply
Can't recommend it enough. Resource usage matters.
[+] [-] tazjin|10 years ago|reply
Gogs has probably 95% feature parity with Github and it is a lot faster (is Github still Ruby? That would explain it ...)
I run a personal Kubernetes cluster for services and getting Gogs up and running was super-simple: https://git.tazj.in/tazjin/infrastructure/src/master/gogs/go...
[+] [-] mbrock|10 years ago|reply
[+] [-] umanwizard|10 years ago|reply
[+] [-] fiatjaf|10 years ago|reply
[+] [-] paukiatwee|10 years ago|reply
[+] [-] Bedon292|10 years ago|reply
[+] [-] fweespee_ch|10 years ago|reply
https://gogs.io/docs/installation/install_from_packages
It is what I use for my misc things at home.
[+] [-] mmoya|10 years ago|reply
[+] [-] ihowlatthemoon|10 years ago|reply
[+] [-] jeromenerf|10 years ago|reply
Anyway, I would love to see better integration on both with their mandatory complements, such as kanban, CI, ...
[+] [-] xtacy|10 years ago|reply
- How do you develop such web apps with html, css, javascript, go, etc. all interacting with each other?
- How are static assets packaged in a single binary?
- Any simple tutorial or stack walkthrough you would recommend me reading?
thanks!
[+] [-] _1|10 years ago|reply
[+] [-] voidlogic|10 years ago|reply
Also, many of the most popular solutions in this space are written in what some people would call "low performance languages", since the author here is using a "high performance language", its just good marketing too.
[+] [-] joeblau|10 years ago|reply
[+] [-] weberc2|10 years ago|reply
[+] [-] reactor|10 years ago|reply
[+] [-] 11mariom|10 years ago|reply
Something small, easy to setup, easy to use. Just as Gogs is.
All I want - integration with git/gogs (webhook?), status page (with detailed build/test info, especialy for fails), status image (for readme in gogs).
[+] [-] mrmondo|10 years ago|reply
[+] [-] sytse|10 years ago|reply