Có vẻ như trình quản lý gói của bạn không tạo được cơ sở dữ liệu có tên $ user cho bạn. Lý do mà
psql -d template1
phù hợp với bạn vì template1 là cơ sở dữ liệu được tạo bởi chính postgres và có mặt trên tất cả các bản cài đặt. Bạn dường như có thể đăng nhập vào template1, vì vậy bạn phải có một số quyền được cơ sở dữ liệu gán cho bạn. Hãy thử điều này tại lời nhắc trình bao:
createdb
và sau đó xem liệu bạn có thể đăng nhập lại bằng
psql -h localhost
Điều này đơn giản sẽ tạo ra một cơ sở dữ liệu cho người dùng đăng nhập của bạn, mà tôi nghĩ đó là những gì bạn đang tìm kiếm. Nếu createb không thành công, thì bạn không có đủ quyền để tạo cơ sở dữ liệu của riêng mình và bạn sẽ phải tìm cách sửa gói homebrew.