Commit Graph

156 Commits

Author SHA1 Message Date
andreika-git 71dc3b8396 curl support 2022-04-08 12:17:33 +03:00
Stephen Jungels 12e9549c00 Create status.md 2017-01-28 16:20:14 -05:00
Stephen Jungels 2cac8244cc Update readme.md
Removed bountysource link
2016-08-15 12:20:25 -04:00
Stephen Jungels 3a40db999b Delete go-cyg.go 2016-03-07 12:39:13 -05:00
Stephen Jungels 5ef3cf48e2 Delete README.md 2016-03-07 12:39:01 -05:00
Stephen Jungels 22a687440f Delete apt-msys2 2016-03-07 12:38:41 -05:00
Stephen Jungels 1d5df19948 Merge pull request #75 from lcorbasson/patch-1
Create a license file (MIT)
2016-03-07 12:32:08 -05:00
Loïc Corbasson 807a91f87a Create a license file (MIT)
MIT license like in the source files
2016-03-07 11:50:40 +01:00
Stephen Jungels 0638b38932 Removed old status update 2016-03-01 15:48:24 -05:00
Stephen Jungels cf0e883858 Update readme.md
Status update
2016-01-24 10:06:46 -05:00
Steven Penny b6076c2900 you guys love wasting my time or: fix #72 2016-01-22 22:31:09 -06:00
Steven Penny b3668b1b64 apt-cyg version 1 2016-01-03 10:54:42 -06:00
Steven Penny 2f59c986cb usage="\ 2016-01-02 19:44:17 -06:00
Steven Penny fd985e7a34 Fix #69 2015-12-07 21:09:20 -06:00
Steven Penny 0e1df15a9e modified: readme.md 2015-11-28 13:25:57 -06:00
Steven Penny 4a792a1582 modified: readme.md 2015-11-28 12:29:43 -06:00
Steven Penny 734e6eba2e renamed: CHANGELOG.md -> changelog.md
renamed:    README.md -> readme.md
2015-11-25 20:24:16 -06:00
Steven Penny 395caa566e --nodeps
Specify this option to skip all dependency checks
2015-09-06 14:12:53 -05:00
Steven Penny a517b08c94 Fix #58 fix #59
If a user sets cache as "/", this gets converted to "C:\cygwin64". Instead of
coverting back to "/", causing an error with "mkdir", we can just use
"C:\cygwin64" as is. "DosFileWarning" now off by default, so it should not be
necessary to convert cache path to Unix form.

http://cygwin.com/ml/cygwin/2015-07/msg00432.html
2015-07-29 19:16:39 -05:00
Steven Penny 4e05a4540b searchall: exclude cygwin32 packages 2015-07-07 21:30:53 -05:00
Steven Penny b1d9475b34 Fix #50 2015-05-30 23:12:04 -05:00
Steven Penny f2fa0ab790 mirror and cache operations
mirror and cache are now operations rather than options. This is in line with
both apt-get and pacman. Note this does mean some situations may require extra
commands. For example if you want to temporarily change the mirror, you will
need to do

    apt-cyg mirror http://alpha.com
    apt-cyg install bravo
    apt-cyg mirror http://charlie.com
2015-04-18 02:44:45 -05:00
Steven Penny 7a2044ea9f Kill info function 2015-04-17 23:19:58 -05:00
Steven Penny 3ca57e88d3 Update documentation
- Update readme
- Split “list” into “list” and “listall”
- Kill short option names
- Kill --file option
- Kill --help option
2015-04-17 22:47:28 -05:00
Steven Penny 27570bae67 new file: go/README.md
modified: go/go-cyg.go
2015-04-16 22:35:48 -05:00
Steven Penny 83fb7b8a7b modified: README.md 2015-04-16 21:54:46 -05:00
Steven Penny 56f3961371 Fix #43 2015-04-16 11:25:40 -05:00
Steven Penny 210e5a3cde renamed: go-cyg.go -> go/go-cyg.go 2015-04-12 17:41:31 -05:00
Steven Penny 83b2425481 Begin Go rewrite
This may end up being nothing, but would like to rewrite apt-cyg in Go. This
will be nice because you will end up with a single EXE file, similar to
setup-x86_64.exe. The difference is that it will be totally command line like
apt-cyg, but better because you can build all the requirements
(wget, bunzip2, awk) right into the EXE. My concern right now is that I will
probably have to write an INI parser, because Cygwin setup.ini is a weird
format. Since I am just starting with Go I may not have the skill, we shall see.
2015-04-12 04:36:19 -05:00
Steven Penny aea773d829 Fix #29 Fix #30 2015-01-02 12:21:20 -06:00
Steven Penny cc9b2bdf0d functions: download set-cache set-mirror apt-install apt-remove begin charlie
Here are the changes, by line number:

- remove "-c", keep long version
- remove "-f" and "--file". I have never used this, and apt-get does does have
  it
- remove "-m", keep long version
- remove "--help", you can get help by just "apt-cyg"
- lowercase ARCH variable, typically uppercase is for exported variables
- use readonly variables where applicable
- remove setup.ini-save, I see no point in this, and setup.exe does not use it
- go back to using "[" over "[[", more portable
- declare all variables local in "begin" function, this will prevent creation of
  global variables. Child functions still have access to local variables, but
  the only fix to that is running every function in a subshell, which is also
  not ideal
- use "let" over "(("
- stop using awk ENVIRON array. This became a problem because the array is only
  populated with exported variables. We do not want variables being passed to
  child "apt-cyg" processes just to play nice with awk
- use "return" in functions instead of "exit", this will allow proper running of
  "charlie" function
- add "check-packages" to some functions
- stop creating "desc" files, you can parse this information out of setup.ini
  easy enough, and setup.exe does not create them either
- generate md5 file from setup.ini, this way you can use it with md5sum instead
  of stdin
- utilize "wget -rnH" to create directories
- stop running "type -P" when searching for a file with "apt-cyg search".
  apt-get does not do this and it could be confusing
- break "--cache" and "--mirror" out of the case statement and into their own
  functions. this will make the case statement less unwieldy
- write directly to "installed.db" using "awk -i inplace"
- function "charlie": this check for any leaked global variables and prints them
  to stdout just before the script finishes. this should help with debugging
2014-12-29 16:36:17 -06:00
Steven Penny c325aee5a6 modified: apt-cyg 2014-12-27 23:33:20 -06:00
Steven Penny db7bada3d2 refactor remove function
- use one awk command instead of two, to determine if package is not removable
- save comparison files to /etc/setup instead of /tmp
- save as "essential.lst" and "$pkg.lst" respectively
- use warnings where appropriate
- new file list logic
  - extract file list
  - if package is essential, remove file list and exit
  - if package is not essential, remove package, remove file list and continue
- new delete logic
  - remove all files
  - remove empty directories
- utilize awk inplace where appropriate
2014-12-27 22:00:18 -06:00
Steven Penny dcd9b3d56d Fix #12 2014-12-26 04:41:18 -06:00
Steven Penny b1162d9d95 modified: apt-cyg 2014-12-25 13:41:35 -06:00
Steven Penny 44ed47e33a modified: README.md 2014-12-20 03:03:25 -06:00
Steven Penny 61ae91a00a Remove wget dependency
apt-cyg has had a long standing circular dependency with wget. This is because
Base Cygwin does not include wget or curl. I have mentioned before workarounds
to this

41e1d91172

However none were ideal. I have since discovered lynx, which can be used in a
pinch to download files

http://unix.stackexchange.com/a/83987

lynx has these features

- pure command line, unlike setup-x86_64
- works with "https://" URLs, unlike /dev/tcp
- comes with Base Cygwin, unlike wget/curl

If wget is not installed, lynx will be used as a fallback with a warning
printed.
2014-12-20 02:42:40 -06:00
Steven Penny aa4a288c33 modified: README.md 2014-12-16 01:14:10 -06:00
Steven Penny 91c7746b9b modified: README.md 2014-12-16 01:06:31 -06:00
Steven Penny b6cbda6fa5 rdepends: find-like output
e9bea37b95
2014-12-16 00:34:42 -06:00
Steven Penny 3f2b9d9ce6 modified: README.md 2014-11-17 14:27:37 -06:00
Steven Penny b6f9d536db minor edit 2014-11-14 19:23:18 -06:00
Steven Penny 23c2db7a28 searchall: fix split lines
http://cygwin.com/ml/cygwin/2014-11/msg00287.html
2014-11-12 18:53:12 -06:00
Steven Penny 9b5de3f26c searchall: account for broken lines
http://cygwin.com/ml/cygwin/2014-11/msg00278.html
2014-11-12 15:18:43 -06:00
Steven Penny e9bea37b95 depends: find-like output
when dealing with package dependency woes, such as

http://cygwin.com/ml/cygwin/2014-10/msg00563.html

The current "depends" tree method fails, because it only shows the packages, not
the dependency paths. These paths are necessary to solve the "shortest path
problem"

http://wikipedia.org/wiki/Shortest_path_problem

Now, every possible dependency path will print from the chosen package. Combined
with category search you can run searches such as

    apt-cyg category Base |
    apt-cyg depends |
    awk '/perl$/ {print length,$0}' |
    sort -n

Solving the path problem in seconds.
2014-11-11 03:15:24 -06:00
Steven Penny 2138f54544 check-packages 2014-11-01 00:30:30 -05:00
Steven Penny 8eb315174e Support standard input
Can now pipe package names to apt-cyg, example

    echo bash | apt-cyg show

If --file is provided as well, it will override stdin

    echo bash | apt-cyg show --file foo.txt

Note the Linux analog "apt-cache show" does not provide this functionality.
2014-10-31 11:38:13 -05:00
Steven Penny 83cac7847e category command
This is similar to the command

    aptitude search '?section(shells)'

http://askubuntu.com/a/473511
2014-10-31 00:06:52 -05:00
Steven Penny 7bee9222bc Never print "No packages found" with apt-cyg list 2014-10-26 20:30:30 -05:00
Steven Penny c7f61ef0e8 Update README.md 2014-10-26 18:40:21 -05:00