Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consolidate GTK app Code.as / GitHub repos #28

Merged
merged 21 commits into from Jul 26, 2019

Conversation

BrainBlasted
Copy link
Collaborator

This PR takes care of the work needed to bring the Code.as and GitHub codebases into one space. The main changes:

  • The dependencies are no longer bundled, using only submodules
  • The app ID is set dynamically with meson

The gb project is unmaintained, and `go` has gained many of
it's features. Because of this `go build` can now be used
without issue.

Related to T639
Since `go build` is used instead of `gb build`, the
buildsystem can fetch from non-GitHub hosts. The bundled
source code is no longer necessary.

Related to T639
This is the final step for T639. Consolidates both builds
into one build by using meson to configure the app id and
file names at build time. Also changes the build
commands in the debian/rules file in order to use the new
system.
Copy link
Member

@thebaer thebaer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent, thanks @BrainBlasted!

Changes all look good to me -- it just looks like there's a build issue with elementary's stuff. Could you take a look at that? Or should we fix that separately?

The latest version of the CLI repositiory supports Go
modules.
Instead of using the default go buildsystem with $GOPATH,
the build script takes advantage of go modules pulling in
the dependencies automatically with `go build`.
`go get` allows the buildsystem to fetch dependencies for
the cli, then build locally.
Since the buildsystem uses `go get`, this submodule is no
longer necessary.
This allows the buildsystem to know for sure where GOPATH
is, and ensures GOPATH sticks around for houston CI.
Remove `gb` and add `git`
@BrainBlasted
Copy link
Collaborator Author

I "fixed" it, but that involved reverting the changes around gb. We'll have to see if I can get gb to work for the flatpak build, then.

@thebaer
Copy link
Member

thebaer commented Jul 26, 2019

Alright, sounds good. We should be set for the scope of this task, at least.

Do we need to update the build instructions in the README, too? With a clean repo, when I run meson build now I get this output / error:

The Meson build system
Version: 0.51.1
Source dir: /home/mattbaer/projects/gtk/writeas-gtk
Build dir: /home/mattbaer/projects/gtk/writeas-gtk/build
Build type: native build
Project name: writeas-gtk
Project version: 1.0.2
C compiler for the build machine: cc (gcc 7.3.0 "cc (Ubuntu 7.3.0-27ubuntu1~18.04) 7.3.0")
Vala compiler for the build machine: valac (valac 0.40.11)
C compiler for the host machine: cc (gcc 7.3.0 "cc (Ubuntu 7.3.0-27ubuntu1~18.04) 7.3.0")
Vala compiler for the host machine: valac (valac 0.40.11)
Build machine cpu family: x86_64
Build machine cpu: x86_64
Configuring config.h using configuration
Configuring writeas-gtk.desktop using configuration
Configuring writeas-gtk.appdata.xml using configuration
Found pkg-config: /usr/bin/pkg-config (0.29.1)
Run-time dependency gtk+-3.0 found: YES 3.22.30
Run-time dependency gtksourceview-3.0 found: YES 3.24.7

meson.build:24:0: ERROR: Non-existent build file 'fonts/lora/meson.build'

@BrainBlasted
Copy link
Collaborator Author

You need to do a recursive clone or initialize the submodules after cloning.

@BrainBlasted
Copy link
Collaborator Author

Note: that aspect isn't different from the current master branch. So the directions could use an update, but that's unrelated to this PR.

@thebaer
Copy link
Member

thebaer commented Jul 26, 2019

Thanks, I'd forgotten about that. Everything builds just fine 👍

There's just one last difference between the normal Code.as build and the GitHub / elementary version: the Code.as build didn't include the changes in #14.

If it's possible, and if there's no compelling reason not to do this, I'd like to keep the small icons in the writeas-gtk build and the large icons in the com.github.writeas.writeas-gtk build. What do you think?

Translates writeas#14
to the consolidated build.

Finishes off T639
@BrainBlasted
Copy link
Collaborator Author

Done. I think this should be good to go once this pipeline finishes.

@thebaer
Copy link
Member

thebaer commented Jul 26, 2019

Awesome, looks great! Merging now.

@thebaer thebaer merged commit 4a96bf2 into writeas:master Jul 26, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants