Adding Go Modules support, which will be mandatory with the usage of go v1.17.
We plan to drop support for GOPATH mode in Go 1.17. In other words, Go 1.17 will ignore
GO111MODULE
. If you have projects that do not build in module-aware mode, now is the time to migrate. If there is a problem preventing you from migrating, please consider filing an issue or an experience report.
Compressing folder and files to 7z format. Some options are available. The 7za used command store filesystem permissions (such as UNIX owner/group permissions or NTFS ACLs). Not designed for large backup/archival purposes. On Ubuntu, use 'sudo apt-get install p7zip-full' to install required command.
Quick backup of the local repository in case of problem with the new modifications (for example).
- p7zip-full is required to work.
$ # On Ubuntu, use:
$ sudo apt-get install p7zip-full
-
If you just want to use it, simply download the compiled version ( .deb) under the Releases tab.
-
Otherwise, if you plan to play inside the source code, see below How to compile section.
-
All suggestions, contributions and ideas to improve software usability will be greatly appreciated.
7z-folder Debian package installation:
$ sudo dpkg -i 7z-folder-1.6-amd64.debUninstall:
$ sudo dpkg -P 7z-folder
- Programmed with go language: golang
- GUI provided by Gotk3, GUI library for Go (minimum required gtk3.16).
- I use home-made software: "Gotk3ObjHandler" to embed images/icons, UI-information and manage/generate gtk3 objects code from glade ui designer. and "Gotk3ObjTranslate" to generate the language files and the assignment of a tool-tip on the gtk3 objects (both are not published at the moment, in fact, they need documentations and, I have not had the time to do them).
- Auto increment filename [00], [01], [02]...
- Parametrable compression lvl and dictionary size.
- Append, Upate, New archive options.
- D&D capable.
-
Be sure you have Golang version >= 1.16 installed in right way, Go installation.
-
Getting source from repository:
- git preferred method (the most close to $GOPATH old usage):
$ cd "your-local-workspace" $ git clone "https://github.com/hfmrow/7z-folder" "7z-folder" $ cd 7z-folder $ go build . && ./7z-folder
- golang method (this one put retrieved package to $GOPATH/pkg/pkgName):
$ go get -d "github.com/hfmrow/7z-folder" $ cd ${GOPATH}/pkg/mod/github.com/hfmrow/7z-folder* $ go build . && ./7z-folder
If you have gomodules enabled, all of the following step will be done automatically you can skip it.
- Install Go bindings for GTK3 and follow Installation instructions.
-
Since Golang version >= 1.16, native
embed
library is used instead of previous one and the following restriction (striked) is out of date.To change gtk3 interface you need to setA home made software, (not published actually) have been used to generate some parts of source code / assets embedding.devMode
flag attrue
.So, you cannot (at this time) change interface for production mode. -
To change language file quickly, you need to use another home made software, (not published actually). You can still do it manually, all data has been stored in a '.json' file in the
assets/lang
directory. -
To Produce a stand-alone executable, you must change inside
main.go
file:
func main() {
devMode = true
...
into
func main() {
devMode = false
...
This operation indicates that the internal behavior of the software will be modified to adapt to the production environment (display of errors, location of the configuration file, etc.).
Built using
Name | Version / Info / Name |
---|---|
GOLANG | V1.16.3 -> GO111MODULE="on", GOPROXY="auto" |
DISTRIB | LinuxMint Xfce |
VERSION | 20.1 |
CODENAME | ulyssa |
RELEASE | #56~20.04.1-Ubuntu SMP Mon Apr 12 21:46:35 UTC 2021 |
UBUNTU_CODENAME | focal |
KERNEL | 5.8.0-50-generic |
HDWPLATFORM | x86_64 |
GTK+ 3 | 3.24.20 |
GLIB 2 | 2.64.6 |
CAIRO | 1.16.0 |
GtkSourceView | 4.6.0 |
LiteIDE | 37.4 qt5.x |
Qt5 | 5.12.8 in /usr/lib/x86_64-linux-gnu |
- The compilation have not been tested under Windows or Mac OS.
- Go to this page: Issues and start a new problem report.
- Give the information (as above), concerning your working environment as well as the version of the operating system used.
- Provide a method to reproduce the problem.
- Go bindings for GTK3
- And some personal libraries not yet published.