
A command-line installer for Windows - anuragsoni
https://scoop.sh/
======
Jaruzel
I struggle with all the alternate 'installation managers' for Windows.
Microsoft has already done this with their MSI system (Although even they have
basically abandoned it in favour of the APPX stuff). MSI was a good format,
and could be installed silently with the right switches (/q/b), support
alternate installation options via MST files, and even patches via MSP files.
Even the specific DLL dependencies ('DLL Hell') got fixed via manifest
files/attributes. Microsoft published the MSI specification early on, and
encouraged everyone to support it.

However, the core problem with Windows software is there isn't a primary
software repository for all approved and tested software, like there is for
*nix platforms. Ideally that's what needs to be fixed first before yet more
client-end installers get created.

To fix this, based on the current landscape, all third-party client-end
installers need to support all existing third-party repositories. Even better,
everyone agrees on a standard JSON format (or whatever) for their repository
manifest and all third-party installers understand that. Then just like Linux
et al. all you have to do is add the new repository URL to your installers
config, and all the packages advertised within are immediately available.

It seems really simple to fix - but people have to co-operate.

~~~
AnIdiotOnTheNet
I have a different fix: don't use installers at all and release applications
as portable self-contained directories. You don't need fancy support for
silent installs, you just push the directory and you're done. No need for a
middleman repo either.

~~~
kodablah
For software targeting more advanced users and with limited dependencies, I
agree. But if your software has large shared runtime requirements, is expected
to be used by simple users expecting an icon, has non-trivial installation
checks, etc, an installer is the way to go.

------
pmalynin
Reading the headline made of think of installing Windows via the command-line
(say via imagex). Which is actually very useful in certain tricky situations
when you mess up an install.

Once I didn't have enough space on a flash drive to install Windows via an
ISO...but I did have a liveboot ubuntu system and 2 spare drives.
Interestingly enough imagex and WIM tools were ported to linux, and it was a
surprisingly easy experience.

~~~
devereaux
I did that too! The world certainly has changed now that installing Windows is
easier to do from Linux!

I'm also looking towards using the winre partition to store wins and some kind
of iterative snapshots for PITR recovery.

Any suggestion is welcome!

~~~
toast0
There was a tool called Unattended [1], built to install Windows from Linux
via PXE booting. I've used it a couple of times, but it left off at Windows XP
(and Server 2003), which is a bit too far beyond for me now. Anyway, I think
Windows 7, and definitely Windows 10 are easy to boot from USB, which is
almost as good as a network boot.

[1]
[http://unattended.sourceforge.net/advanced.php](http://unattended.sourceforge.net/advanced.php)

------
cyptus
you can use windows build-in powershell feature "Install-Package" with package
provider "chocolatey" just like this on a fresh windows install:

    
    
      Set-ExecutionPolicy unrestricted
      Get-PackageProvider -name chocolatey
      Install-Package chromium
      Install-Package 7zip
      ...

~~~
ledneb
I discovered Chocolatey during a Windows stint at work ~3 years back and found
their package quality to be very poor. I'd go as far as saying packages had a
50% chance of leaving you with a usable installation of software.

We ended up changing provisioning scripts to download .msi installers directly
and run them with appropriate switches.

I also remember their website having a lot of "maintainers required" notices -
I got the impression that the situation was a little desperate.

Has package quality improved? Is Chocolatey a genuinely reliable way to
install software, now?

~~~
kapep
I've been using it since about 2 years and never had any problems installing
anything. I guess I'm mostly using popular well-maintained packages though, so
YMMV if you are installing some more obscure software.

I'm not sure about the maintainer situation. Some packages get updates quite
regularly while other packages are always a few versions behind the latest
release.

------
noderat
I've been exclusively using Linux/*BSD (Slackware/Gentoo/Arch) for personal
use since upgrading from my K6-2 500 to an AMD Barton 2600+ because finding,
installing and managing "trustworthy" software is easier.

Linux has hardware compatibility challenges and software with bugs, but so
does Windows. I don't, however, have to search through monstrosities like
Download.com. I don't have to figure out what software may have a new release
that is important to me. Critical dependencies are handled automatically.
Every distribution may handle these in slightly different ways but these
basics hold true.

Every time I've had to use Windows I've spent an enormous amount of time
searching for and installing things. Once installed I then discover the
software has changed to a limited free trial or some other nonsense that ends
in another search, install and disappointment loop.

It's tools that have shown up in the last few years like scoop that have made
dealing with Windows at least somewhat tolerable.

------
tracker1
Curious how this compares with Chocolatey

~~~
rococode
I was curious too, turns out it's addressed in the wiki:

[https://github.com/lukesampson/scoop/wiki/Chocolatey-
Compari...](https://github.com/lukesampson/scoop/wiki/Chocolatey-Comparison)

Short version:

\- Installs to ~/scoop/ by default.

\- No UAC popups, doesn't require admin rights.

\- Doesn't pollute your path.

\- Doesn't use NuGet.

\- Simpler than packaging.

\- Simpler app repository.

\- Can't always install a specific version of a program.

\- Focuses on developer tools.

~~~
fxfan
Can I install MS office using scoop? Or other proprietary software that
usually install globally and need admin permissions?

Choco can do that (not that I am affiliated). Also, I like my "path being
polluted". The least these programs can do is symlink to a single binary
directory so I can run them from anywhere.

Simpler repository is just a euphemism for- we have little.

As an end user I have no business whether it does it doesn't use nuget.

I'm not trying to diss - I respect and appreciate not players in this space
but its important to say it like it is. Also, given how "open" choco ecosystem
is- I'd love to see non-official tools on top of that.

~~~
amanzi
I gave up on Choco because it got too hard. I could never tell which package I
should install, I was never sure if I should be installing from an elevated
prompt or not, and then they added a bunch of premium plans to choose between
with a confusing feature matrix.

~~~
GordonS
I really _want_ Chocolately to suceed, but so many packages are outdated, and
there are a lot of duplicates, so you often don't know which one you should
get. I find the web UI very clunky too.

~~~
yyyymmddhhmmss
Have you ever tried to uninstall Chocolatey? When I tried doing that for the
first time, it was a terror so I never looked back.

------
rkagerer
_> >Scoop reads the README for you<<_

I'd rather just have a clear and concise README. Better yet, if vendors
distributed their applications as single bundled EXE files like back in the
day.

Don't take this the wrong way, I haven't used scoop and I have nothing against
it. Just wish there weren't a need for it.

------
alexeiz
Scoop together with a large collection of portable software is a godsend in a
corporate environment, where you don't have admin privileges on your work
machine and getting up-to-date software approved and installed by your IT
department is a royal pain in the ass. I can confidently say that were it not
for Scoop, I'd be in order of magnitude less productive at my work due to the
lack of necessary software. Scoop is one of those things that makes a
potentially unbearable work environment a productive and even enjoyable one.
Yes, Scoop is not perfect. Sometimes it breaks and I have to manually fix it
(it likes to uninstall outdated packages before downloading and verifying the
checksum of the updated ones). But the time spent on fixing it is easily
recovered by boost of productivity that it provides.

------
GordonS
I realise I can find packages by scouring the GitHub repos[0][1], but I'd also
appreciate a web search UI, especially as the number of available packages
grows. This could also let me easily discover what version(s) are available
etc.

I can't seen to find it, but does such a UI already exist?

[0]
[https://github.com/lukesampson/scoop/tree/master/bucket](https://github.com/lukesampson/scoop/tree/master/bucket)

[1] [https://github.com/lukesampson/scoop-
extras/tree/master/buck...](https://github.com/lukesampson/scoop-
extras/tree/master/bucket)

~~~
frou_dh
[https://repology.org/](https://repology.org/)

It's a common web interface on top of many package repositories, including
this one.

~~~
GordonS
Thanks, I've never come across this before, and it looks really useful for
finding Linux packages, even if it's not exactly the most user-friendly UI!

------
soapdog
My main machine broke two days ago and I had to buy and setup a new one
quickly to resume working. I used scoop to install all applications I needed
to work. It was easy and all the apps stay organized in their folder inside my
home folder. I find scoop very refreshing and easy to use compared to other
windows alternatives. I really recommend it to people, specially developers.

------
FavouriteColour
This looks pretty good. At the moment I'm using MSYS2 on my work machine (have
to use Windows).

Any thoughts on this installation method?

    
    
        iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
    

I'm not sure IT Security here would be too impressed.

~~~
yjftsjthsd-h
`curl | sh`, take 2:) I hope _nobody_ would be impressed, unless there's some
safety features that aren't obvious here.

~~~
smittywerben
FYI powershell comes with curl now (and ssh).

~~~
yjftsjthsd-h
I'm aware of openssh on NT being a thing now, but last I saw I thought
powershell's "curl" was just an alias to their equivalent, which means that
ex. options don't actually match for anything non-trivial. (IIRC, they did
this with lots of commands; `ls` gets mapped to a local equivalent, but `ls
-lahr *.foo` would not do what you think it should)

~~~
smittywerben
It's the real curl[0]. I actually like the aliases and they've even added
ctrl-shift paste in the options. Maybe they should be the default.

The windows filesystem still makes no sense but that's an NT issue (dropbox
cant sync con.sh???). SSH has a surprisingly native feel but graphical apps
(vim, screen) still have rendering problems, and the ssh-agent daemon isn't
set up right by default.

Until they make Windows LTSC unusable, it's not _too_ horrible right now. But
for a serious programming project there's still no question for me (but fix
your damnable sound drivers Ubuntu).

[0]
[https://blogs.msdn.microsoft.com/commandline/2018/01/18/tar-...](https://blogs.msdn.microsoft.com/commandline/2018/01/18/tar-
and-curl-come-to-windows/)

------
aynawn
It's easy to add new bucket entries by adding json files. Also if I understand
it correctly, their auto update feature allows many apps to be self maintained
i.e. you don't have to update the json when a new version comes out.

------
serbrech
Why handle windows only? This was posted recently on HN :
[http://gofi.sh](http://gofi.sh) \- Fish - A systems package manager like
homebrew but cross-platform

~~~
mehrdadn
Why in the world does it symlink stuff into C:\ProgramData? Normal Windows
installers don't do that.

~~~
Zekio
I guess it is for cross user install support but that can be achieved in other
ways easily

------
jpambrun
Scoop is about the only thing that works on my stupidly locked work laptop.
Unfortunately, McAfee AV just started deleting scoop scripts randomly. God I
hate windows.

------
glitchc
Changing the Execution Policy triggers a UAC prompt...

~~~
hug
Not if you define the scope for execution policy.

~~~
glitchc
At my place of work, IT has taken the scorched earth route and blocked
Powershell altogether.

------
stuaxo
How does it compare to chocolatey ?

------
aboutruby
I wouldn't put so much trust in this unknown package manager, Chcolatey or
Homebrew on Windows would be far better choices.

~~~
vips7L
You don't know what you're talking about.

------
Tsubasachan
Ha one important reason why windows won was because you never had to touch the
keyboard ever again.

~~~
oblio
A lot of the people that thing was meant for are now using smartphones and
tablets. PCs will be for power users and office workers.

------
marmaduke
MinGW ships with pacman, I can’t see why one would need this.

~~~
zapzupnz
Because not everybody needs all the stuff that comes with MinGW? Why install
all that stuff if they don't intend to use it, just to get a package manager
designed for another platform?

Apart from the fact that the MinGW port of pacman is designed for the MinGW
environment only, and therefore doesn't necessarily integrate all that well
with the rest of the Windows system, the packages it provides are mainly ports
of software from other systems (chiefly Linux and BSD) rather than native
Windows software.

Doesn't seem all that relevant.

~~~
marmaduke
> Looking for familiar Unix tools?

Is the leading line in the motivational paragraph for this tool, and its
example usage is

> scoop install curl

Your comment doesn’t seem all that relevant.

